diff options
author | Adam Johnson <me@adamj.eu> | 2020-05-23 19:32:22 +0100 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2021-08-03 09:57:04 +0200 |
commit | ae89daf46f83a7b39d599d289624c3377bfa4ab1 (patch) | |
tree | d13424f391dc541289db612d896542856bc4080f /tests/test_runner | |
parent | 7e38a8d66f9a4fbbf373de30f1cc6be906502559 (diff) | |
download | django-ae89daf46f83a7b39d599d289624c3377bfa4ab1.tar.gz |
Fixed #31621 -- Added support for '--parallel auto' to test management command.
Diffstat (limited to 'tests/test_runner')
-rw-r--r-- | tests/test_runner/test_discover_runner.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tests/test_runner/test_discover_runner.py b/tests/test_runner/test_discover_runner.py index 327a6625ae..f62f157149 100644 --- a/tests/test_runner/test_discover_runner.py +++ b/tests/test_runner/test_discover_runner.py @@ -50,16 +50,31 @@ class DiscoverRunnerParallelArgumentTests(SimpleTestCase): def test_parallel_default(self, *mocked_objects): result = self.get_parser().parse_args([]) - self.assertEqual(result.parallel, 1) + self.assertEqual(result.parallel, 0) def test_parallel_flag(self, *mocked_objects): result = self.get_parser().parse_args(['--parallel']) self.assertEqual(result.parallel, 12) + def test_parallel_auto(self, *mocked_objects): + result = self.get_parser().parse_args(['--parallel', 'auto']) + self.assertEqual(result.parallel, 12) + def test_parallel_count(self, *mocked_objects): result = self.get_parser().parse_args(['--parallel', '17']) self.assertEqual(result.parallel, 17) + def test_parallel_invalid(self, *mocked_objects): + with self.assertRaises(SystemExit), captured_stderr() as stderr: + self.get_parser().parse_args(['--parallel', 'unaccepted']) + msg = "argument --parallel: 'unaccepted' is not an integer or the string 'auto'" + self.assertIn(msg, stderr.getvalue()) + + @mock.patch.dict(os.environ, {'DJANGO_TEST_PROCESSES': '7'}) + def test_parallel_env_var(self, *mocked_objects): + result = self.get_parser().parse_args([]) + self.assertEqual(result.parallel, 7) + @mock.patch.dict(os.environ, {'DJANGO_TEST_PROCESSES': 'typo'}) def test_parallel_env_var_non_int(self, *mocked_objects): with self.assertRaises(ValueError): |