Merge pull request #8376 from s0undt3ch/0.17

Adapt the runtests parser to support running the tests suite under a Docker container
Fileclient throwing exceptions

In cases where where file_list_emptydirs() returned None, we'd throw an exception. This totally breaks the return output of things like cp.get_dir. This just catches the None and passes.
Merge pull request #8412 from s0undt3ch/0.17

It's `salt.utils` not `salt.util`.
Add CLI example to test.arg_type
arg, not args for run_function
Use assertIn instead of assertEqual for pillar newline tests
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.

Less local variables.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.
Under Python 2.6, curly braces in strings to `.format()` MUST be indexed.

Double to single quotes and minor formatting.
ABOLISH un-indexed curly braces on strings to format on Jenkins too!!!!
ABOLISH un-indexed curly braces on strings to format!!!!
Only delete the file if it actually exists.
Pass a relative path for proper test execution.

If we're trying to test a failure which happens when the path is not absolute, let's not pass it an absolute path in the first place.