diff --git a/avocado/job.py b/avocado/job.py index a51ca8d163185d2ed625acd882a5a19d1b05075f..24a88c8c608c43a07da41a70b2a376aaa492b57a 100644 --- a/avocado/job.py +++ b/avocado/job.py @@ -399,6 +399,10 @@ class Job(object): e_msg = "Empty test ID. A test path or alias must be provided" raise exceptions.OptionValidationError(e_msg) + if not params_list: + e_msg = "Empty test ID. A test path or alias must be provided" + raise exceptions.OptionValidationError(e_msg) + if self.args is not None: self.args.test_result_total = len(params_list) diff --git a/selftests/all/functional/avocado/basic_tests.py b/selftests/all/functional/avocado/basic_tests.py index 7c62ab79d110e01a4c39fba166b29e38f920c6cd..2b99d304f970c06ffa54c8e1ec30e78c7c6c522a 100644 --- a/selftests/all/functional/avocado/basic_tests.py +++ b/selftests/all/functional/avocado/basic_tests.py @@ -150,10 +150,18 @@ class RunnerOperationTest(unittest.TestCase): result = process.run(cmd_line, ignore_status=True) expected_rc = 0 expected_output = '' - print repr(result.stdout) self.assertEqual(result.exit_status, expected_rc) self.assertEqual(result.stderr, expected_output) + def test_empty_test_list(self): + os.chdir(basedir) + cmd_line = './scripts/avocado run' + result = process.run(cmd_line, ignore_status=True) + expected_rc = 2 + expected_output = 'Empty test ID. A test path or alias must be provided' + self.assertEqual(result.exit_status, expected_rc) + self.assertIn(expected_output, result.stderr) + class RunnerDropinTest(unittest.TestCase):