diff options
author | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2021-08-05 05:55:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-05 05:55:35 +0200 |
commit | ab16507f192d6da371f7165ecb159764a807cadc (patch) | |
tree | f9f09f37aa2c48c902695ed284b2c42da4185f75 /tests/test_runner | |
parent | 2d0ae8da80e1ed37e94f3abad5c80145a00e688f (diff) | |
download | django-ab16507f192d6da371f7165ecb159764a807cadc.tar.gz |
Fixed #32988 -- Prevented creation of more test databases than TestCases.
DiscoverRunner.parallel is used in setup_databases() and
teardown_databases() to control the number of test databases.
Regression in cb6c19749d342c3dc0f97d89ff6887b220cf45b8.
Diffstat (limited to 'tests/test_runner')
-rw-r--r-- | tests/test_runner/test_discover_runner.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/test_runner/test_discover_runner.py b/tests/test_runner/test_discover_runner.py index f62f157149..b73c1581e3 100644 --- a/tests/test_runner/test_discover_runner.py +++ b/tests/test_runner/test_discover_runner.py @@ -457,6 +457,26 @@ class DiscoverRunnerTests(SimpleTestCase): suite = runner.build_suite(['test_runner_apps.tagged']) self.assertEqual(suite.processes, len(suite.subsuites)) + def test_number_of_databases_parallel_test_suite(self): + """ + Number of databases doesn't exceed the number of TestCases with + parallel tests. + """ + runner = DiscoverRunner(parallel=8, verbosity=0) + suite = runner.build_suite(['test_runner_apps.tagged']) + self.assertEqual(suite.processes, len(suite.subsuites)) + self.assertEqual(runner.parallel, suite.processes) + + def test_number_of_databases_no_parallel_test_suite(self): + """ + Number of databases doesn't exceed the number of TestCases with + non-parallel tests. + """ + runner = DiscoverRunner(parallel=8, verbosity=0) + suite = runner.build_suite(['test_runner_apps.simple.tests.DjangoCase1']) + self.assertEqual(runner.parallel, 1) + self.assertIsInstance(suite, TestSuite) + def test_buffer_mode_test_pass(self): runner = DiscoverRunner(buffer=True, verbosity=0) with captured_stdout() as stdout, captured_stderr() as stderr: |