diff options
author | David Smith <smithdc@gmail.com> | 2022-02-12 20:40:12 +0000 |
---|---|---|
committer | Carlton Gibson <carlton@noumenal.es> | 2022-03-15 16:23:55 +0100 |
commit | 3b3f38b3b09b0f2373e51406ecb8c9c45d36aebc (patch) | |
tree | 8ab2c436451318223606470fcdc23b6dc690da20 /tests/test_runner | |
parent | 3eaba13a476c14b75429ba34180184b81997b33a (diff) | |
download | django-3b3f38b3b09b0f2373e51406ecb8c9c45d36aebc.tar.gz |
Fixed #31169 -- Adapted the parallel test runner to use spawn.
Co-authored-by: Valz <ahmadahussein0@gmail.com>
Co-authored-by: Nick Pope <nick@nickpope.me.uk>
Diffstat (limited to 'tests/test_runner')
-rw-r--r-- | tests/test_runner/test_discover_runner.py | 10 | ||||
-rw-r--r-- | tests/test_runner/tests.py | 10 |
2 files changed, 14 insertions, 6 deletions
diff --git a/tests/test_runner/test_discover_runner.py b/tests/test_runner/test_discover_runner.py index fd36f0ab89..bca9037492 100644 --- a/tests/test_runner/test_discover_runner.py +++ b/tests/test_runner/test_discover_runner.py @@ -86,6 +86,16 @@ class DiscoverRunnerParallelArgumentTests(SimpleTestCase): mocked_cpu_count, ): mocked_get_start_method.return_value = "spawn" + self.assertEqual(get_max_test_processes(), 12) + with mock.patch.dict(os.environ, {"DJANGO_TEST_PROCESSES": "7"}): + self.assertEqual(get_max_test_processes(), 7) + + def test_get_max_test_processes_forkserver( + self, + mocked_get_start_method, + mocked_cpu_count, + ): + mocked_get_start_method.return_value = "forkserver" self.assertEqual(get_max_test_processes(), 1) with mock.patch.dict(os.environ, {"DJANGO_TEST_PROCESSES": "7"}): self.assertEqual(get_max_test_processes(), 1) diff --git a/tests/test_runner/tests.py b/tests/test_runner/tests.py index 665f2c5ef8..c50c54f25c 100644 --- a/tests/test_runner/tests.py +++ b/tests/test_runner/tests.py @@ -480,8 +480,6 @@ class ManageCommandTests(unittest.TestCase): # Isolate from the real environment. @mock.patch.dict(os.environ, {}, clear=True) @mock.patch.object(multiprocessing, "cpu_count", return_value=12) -# Python 3.8 on macOS defaults to 'spawn' mode. -@mock.patch.object(multiprocessing, "get_start_method", return_value="fork") class ManageCommandParallelTests(SimpleTestCase): def test_parallel_default(self, *mocked_objects): with captured_stderr() as stderr: @@ -507,8 +505,8 @@ class ManageCommandParallelTests(SimpleTestCase): # Parallel is disabled by default. self.assertEqual(stderr.getvalue(), "") - def test_parallel_spawn(self, mocked_get_start_method, mocked_cpu_count): - mocked_get_start_method.return_value = "spawn" + @mock.patch.object(multiprocessing, "get_start_method", return_value="spawn") + def test_parallel_spawn(self, *mocked_objects): with captured_stderr() as stderr: call_command( "test", @@ -517,8 +515,8 @@ class ManageCommandParallelTests(SimpleTestCase): ) self.assertIn("parallel=1", stderr.getvalue()) - def test_no_parallel_spawn(self, mocked_get_start_method, mocked_cpu_count): - mocked_get_start_method.return_value = "spawn" + @mock.patch.object(multiprocessing, "get_start_method", return_value="spawn") + def test_no_parallel_spawn(self, *mocked_objects): with captured_stderr() as stderr: call_command( "test", |