(#19713) Add tests for non-String exec commands

Add tests that ensure `exec` resources raise errors if the value given for
`command` is not of type `String`.
(#19713) Validate exec commands to be type String

The `exec` type calls a pile of string-specific methods, such as `scan` and
`split`, on the value of `command`. Validate that `command` is of type `String`
so that Puppet can fail with a helpful message if the value was passed as a
type such as `Array`.