Chris Jerdonek
d828beb68f
Fixed #32529 -- Delayed creating a test suite in build_suite().
2021-03-11 10:02:06 +01:00
Chris Jerdonek
d8a4bcffdb
Refs #32489 -- Doc'd and tested iter_test_cases() support for an iterable of tests.
2021-03-11 09:23:33 +01:00
Chris Jerdonek
77e0a35a10
Fixed #32516 -- Fixed reorder_suite() with duplicates and reverse=True.
2021-03-09 13:30:51 +01:00
Chris Jerdonek
22c9af0eae
Fixed #32489 -- Added iter_test_cases() to iterate over a TestSuite.
...
This also makes partition_suite_by_type(), partition_suite_by_case(),
filter_tests_by_tags(), and DiscoverRunner._get_databases() to use
iter_test_cases().
2021-03-05 13:04:07 +01:00
Simon Charette
3089018e95
Fixed #32446 -- Deprecated SERIALIZE test database setting.
...
Whether or not the state of a test database should be serialized can be
inferred from the set of databases allowed to be access from discovered
TestCase/TransactionTestCase enabling the serialized_rollback feature
which makes this setting unnecessary.
This should make a significant test suite bootstraping time difference
on large projects that didn't explicitly disable test database
serialization.
2021-02-24 20:31:11 +01:00
Harm Geerts
06e5f7ae16
Fixed #29052 -- Made test database creation preserve alias order and prefer the "default" database.
...
This fixes flushing test databases when two aliases point to the same
database.
Use a list() to store the test database aliases so the order remains
stable by following the order of the connections. Also, always use the
"default" database alias as the first alias to accommodate `migrate`.
Previously `migrate` could be executed on a secondary alias which
caused truncating the "default" database.
2021-02-16 10:25:34 +01:00
Mariusz Felisiak
ec0ff40631
Fixed #32355 -- Dropped support for Python 3.6 and 3.7
2021-02-10 10:20:54 +01:00
Mariusz Felisiak
00a1d42bf0
Fixed isolation of test_runner.EmptyDefaultDatabaseTest.
...
This fixes test_runner.test_debug_sql.TestDebugSQL.
test_setupclass_exception when run in reverse.
2020-12-10 18:48:07 +01:00
Adam Johnson
b9fd09d21b
Fixed #32227 -- Prevented crash when setUpTestData() errors with --debug-sql.
...
Thanks Mariusz Felisiak for the report.
2020-11-28 12:22:59 +01:00
Ahmad A. Hussein
61a0ba43cf
Refs #31811 -- Added optional timing outputs to the test runner.
2020-08-13 17:17:15 +02:00
ovkulkarni
b7a438c7e2
Fixed #31509 -- Made DiscoverRunner enable faulthandler by default.
2020-07-10 18:55:50 +02:00
Matthijs Kooijman
2a2ea4ee18
Refs #31117 -- Made various tests properly handle unexpected databases aliases.
...
- Used selected "databases" instead of django.db.connections.
- Made routers in tests.migrations skip migrations on unexpected
databases.
- Added DiscoverRunnerGetDatabasesTests.assertSkippedDatabases() hook
which properly asserts messages about skipped databases.
2020-01-20 14:39:02 +01:00
Baptiste Mispelon
9e565386d3
Fixed #27430 -- Added -b/--buffer option to DiscoverRunner.
2019-12-09 13:47:12 +01:00
Mariusz Felisiak
f464526388
Refs #30676 -- Added test for invalid --pdb and --parallel usage in DiscoverRunner.
2019-12-09 11:12:06 +01:00
Mariusz Felisiak
25903e41fb
Refs #29926 -- Bumped minimum tblib version to 1.5.0 in test requirements.
2019-10-23 15:26:04 +02:00
Mariusz Felisiak
2847d2c760
Refs #29926 -- Skipped RemoteTestResultTest.test_add_failing_subtests() on Python 3.8+ and tblib <= 1.4.0.
2019-10-22 15:34:19 +02:00
Min ho Kim
65e86948b8
Corrected several typos in string literals and test names.
2019-08-07 11:23:14 +02:00
François Freitag
568eed9e79
Fixed #30245 -- Added -k option to DiscoverRunner.
2019-04-30 16:20:51 +02:00
Jon Dufresne
487d904bf2
Simplified temporary directory handling in AdminScriptTestCase.
...
Use tempfile.TemporaryDirectory() in AdminScriptTestCase.setUp()
to create and destroy a temporary directory for each test. It removes
the need for individual tests to delete files.
For test classes that don't use the temporary directory, inherit from
SimpleTestCase.
2019-02-05 12:11:54 -05:00
Simon Charette
41e73de39d
Fixed #28478 -- Make DiscoverRunner skip creating unused test databases.
...
SimpleTestCase.databases makes it possible to determine the set of
databases required to run the discovered tests.
2019-01-10 19:11:21 -05:00
Simon Charette
8c775391b7
Refs #28478 -- Deprecated TestCase's allow_database_queries and multi_db in favor of databases.
2019-01-10 19:11:21 -05:00
Simon Charette
f6d8b0c47e
Refs #26840 -- Corrected SQLite connection mocking in a setup_databases() test.
...
The test was expecting connections used by DiscoverRunner.setup_databases()
to be the ones defined in django.test.runner but this doesn't hold true
since this method was made a proxy of django.test.utils.setup_databases.
This broke the TransactionTestCase.serialized_rollback feature in the test
suite because calls to create_db_test() cleared the test data persisted on
connections objects.
Added an assertions to prevent this from happening again.
2018-12-24 15:32:27 -05:00
Nick Pope
e626a3f993
Renamed Sqlite and Sqlite3 references to SQLite.
2018-12-22 18:52:54 -05:00
Simon Charette
315357ad25
Fixed #30023 -- Prevented SQLite schema alterations while foreign key checks are enabled.
...
Prior to this change foreign key constraint references could be left pointing
at tables dropped during operations simulating unsupported table alterations
because of an unexpected failure to disable foreign key constraint checks.
SQLite3 does not allow disabling such checks while in a transaction so they
must be disabled beforehand.
Thanks ezaquarii for the report and Carlton and Tim for the review.
2018-12-15 18:51:59 -05:00
Tim Graham
4c7c608a1d
Reverted "Fixed #25251 -- Made data migrations available in TransactionTestCase when using --keepdb."
...
This reverts commits b3b1d3d45f
and
9fa0d3786f
due to reverse build failures
for which a solution isn't forthcoming.
2018-12-05 15:30:23 -05:00
romgar
9fa0d3786f
Refs #25251 -- Filtered out skipped tests when processing the test suite to set _next_serialized_rollback.
2018-11-29 11:20:27 -05:00
Tim Graham
193c109327
Switched TestCase to SimpleTestCase where possible in Django's tests.
2018-11-27 08:58:44 -05:00
romgar
b3b1d3d45f
Fixed #25251 -- Made data migrations available in TransactionTestCase when using --keepdb.
...
Data loaded in migrations were restored at the beginning of each
TransactionTestCase and all the tables are truncated at the end of
these test cases. If there was a TransactionTestCase at the end of
the test suite, the migrated data weren't restored in the database
(especially unexpected when using --keepdb). Now data is restored
at the end of each TransactionTestCase.
2018-11-06 16:57:50 -05:00
Jayden Kneller
916aecd29d
Fixed #29866 -- Made DiscoverRunner do tests tear down if running checks or tests raises an exception.
2018-10-30 12:01:48 -04:00
Matthijs Kooijman
08f360355a
Fixed #29704 -- Fixed manage.py test --testrunner if it isn't followed by an equals sign.
2018-08-23 10:12:03 -04:00
Matthijs Kooijman
69071e7f51
Added manage.py test --testrunner tests.
2018-08-23 10:12:03 -04:00
Oliver Sauder
a07a49ee32
Fixed #29559 -- Fixed TransactionTestCase.reset_sequences for auto-created m2m through models.
2018-07-11 17:20:29 -04:00
Tim Graham
4d98b9d729
Refs #9804 -- Fixed test for sequence reset of M2M with inherited through model.
2018-07-11 16:45:29 -04:00
Claude Paroz
eac9ab7ebb
Removed parser.add_arguments() arguments that match the defaults.
2018-07-02 17:54:57 -04:00
Sanyam Khurana
5a669ae2f4
Fixed #29106 -- Made DiscoverRunner display selected test tags.
2018-02-13 12:56:31 -05:00
Will Ayd
09530e61a0
Fixed #28869 -- Made tagged test classes and methods inherit tags from parents.
2018-01-08 20:57:33 -05:00
Tim Graham
8e1a7dab4b
Reorganized test_runner test apps.
2018-01-04 15:41:33 -05:00
Tim Graham
9d1d3b2d2f
Refs #28814 -- Fixed test_runner failure on Python 3.7.
...
Due to https://bugs.python.org/issue30399 .
2017-11-17 16:13:23 -05:00
Tim Graham
cfff2af02b
Fixed #27857 -- Dropped support for Python 3.4.
2017-09-25 17:11:03 -04:00
Sergey Fedoseev
6de2930078
Fixed #28360 -- Fixed test runner crash with --debug-sql on fail/error in subTest.
2017-07-05 16:56:24 -04:00
Tim Graham
2dc3280254
Fixed #28160 -- Prevented hiding GDAL exceptions when it's not installed.
2017-05-04 20:45:18 -04:00
Tim Graham
ab83d4d8fe
Added multi_db=True to test cases that access the 'other' db connection.
...
Fixed a failure in the context processors tests when running in
reverse on MySQL due to an extra query after refs #27683 .
2017-02-10 08:19:32 -05:00
Tim Graham
29f607927f
Fixed spelling of "nonexistent".
2017-02-03 08:01:45 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Tim Graham
7aba69145d
Refs #23919 -- Removed django.test.mock Python 2 compatibility shim.
2017-01-20 08:17:20 -05:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Claude Paroz
2b281cc35e
Refs #23919 -- Removed most of remaining six usage
...
Thanks Tim Graham for the review.
2017-01-18 21:33:28 +01:00
Claude Paroz
c716fe8782
Refs #23919 -- Removed six.PY2/PY3 usage
...
Thanks Tim Graham for the review.
2017-01-18 16:21:28 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Adam Chainz
6d947e8c32
Refs #25415 -- Fixed/silenced check errors in Django's test suite.
2016-12-28 15:16:10 -05:00
Ramin Farajpour Cami
967be82443
Fixed E305 flake8 warnings.
2016-11-14 12:30:46 -05:00
za
321e94fa41
Refs #27392 -- Removed "Tests that", "Ensures that", etc. from test docstrings.
2016-11-10 21:30:21 -05:00
Adam Wróbel
52188a5ca6
Fixed #27301 -- Prevented exceptions that fail unpickling from crashing the parallel test runner.
2016-10-06 15:54:38 -04:00
Chris Jerdonek
7ca3b391b6
Fixed #27170 -- Added DatabaseWrapper class attributes to ease subclassing.
2016-09-08 16:33:36 -04:00
Chris Jerdonek
42dcceba61
Fixed #26942 -- Added support for subtests during parallel testing.
2016-08-26 14:24:27 -04:00
Andreas Pelme
e76981b433
Fixed #26840 -- Added test.utils.setup/teardown_databases().
2016-08-17 13:55:04 -04:00
Chris Jerdonek
5890b1613c
Fixed #27008 -- Added --debug-mode option to DiscoverRunner.
2016-08-12 20:43:17 -04:00
Chris Jerdonek
a3a5ef4d0e
Fixed #27035 -- Eased changing settings.DEBUG for DiscoverRunner.
2016-08-09 13:40:29 -04:00
Chris Jerdonek
ebed9ee8d5
Fixed #26981 -- Added DiscoverRunner.get_test_runner_kwargs().
2016-08-04 14:45:44 -04:00
Tim Graham
c9ae09addf
Replaced use of TestCase.fail() with assertRaises().
...
Also removed try/except/fail antipattern that hides exceptions.
2016-06-28 11:21:26 -04:00
Tim Graham
92053acbb9
Fixed E128 flake8 warnings in tests/.
2016-04-08 10:12:33 -04:00
Jakub Paczkowski
d4dc775620
Fixed #25735 -- Added support for test tags to DiscoverRunner.
...
Thanks Carl Meyer, Claude Paroz, and Simon Charette for review.
2016-02-17 09:44:18 -05:00
Hasan
3d0dcd7f5a
Refs #26022 -- Used context manager version of assertRaises in tests.
2016-01-29 12:32:18 -05:00
Tim Graham
5b94b17fef
Fixed #25999 -- Removed promotion of RemovedInNextVersionWarning to loud by default.
2016-01-14 09:05:43 -05:00
Josh Soref
93452a70e8
Fixed many spelling mistakes in code, comments, and docs.
2015-12-03 12:48:24 -05:00
Tim Graham
8d1a001ef6
Fixed #25466 -- Added backwards compatibility aliases for LoaderOrigin and StringOrigin.
...
Thanks Simon Charette for the DeprecationInstanceCheck class.
2015-09-29 18:31:11 -04:00
Tim Graham
48e7787db5
Removed RemovedInDjango110Warning.
2015-09-23 19:31:11 -04:00
Aymeric Augustin
4f6a7663bc
Refs #14091 -- Fixed connection.queries on SQLite.
2015-09-17 23:01:33 +02:00
Adam Chainz
3fe3887a2e
Fixed #25377 -- Changed Count queries to execute COUNT(*) instead of COUNT('*').
2015-09-14 13:41:35 -04:00
Dražen Odobašić
b1e33ceced
Fixed #23395 -- Limited line lengths to 119 characters.
2015-09-12 11:40:50 -04:00
Aymeric Augustin
0586c061f0
Cloned databases for running tests in parallel.
2015-09-09 23:01:15 +02:00
Aymeric Augustin
c4bdf52005
Moved an import to the toplevel.
2015-09-05 22:24:46 +02:00
Joseph Gordon
199a02d1e2
Fixed #25110 -- Fixed a test_runner test isolation regression.
...
Thanks claudep for the patch.
2015-07-27 07:35:23 -04:00
Tim Graham
aaacaeb096
Renamed RemovedInDjangoXYWarnings for new roadmap.
...
Forwardport of ae1d663b79
from stable/1.8.x plus more.
2015-06-24 16:08:20 -04:00
Claude Paroz
67c063e6d5
Mocked db.connections in test_runner tests
2015-05-09 17:04:06 +02:00
Andrei Kulakov
e2bfcab065
Fixed #24394 -- Allowed running tests with empty default dictionary.
2015-03-25 17:56:59 -04:00
Tim Graham
307c0f299a
Refs #24324 -- Fixed Python 2 test failures when path to Django source contains non-ASCII characters.
2015-02-17 19:03:03 -05:00
Tim Graham
ad0be620ae
Moved contrib.gis tests out of contrib.
2015-02-11 10:29:54 -05:00
Aymeric Augustin
1b8af4cfa0
Disallowed importing concrete models without an application.
...
Removed fragile algorithm to find which application a model belongs to.
Fixed #21680 , #21719 . Refs #21794 .
2015-02-10 21:41:19 +01:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Tim Graham
0386b97706
Fixed test_runner test failure on Python 3.5; refs #23763 .
...
Python change is http://bugs.python.org/issue22032
2015-01-23 16:23:32 -05:00
Marc Tamlyn
b5c1a85b50
Fixed #24118 -- Added --debug-sql option for tests.
...
Added a --debug-sql option for tests and runtests.py which outputs the
SQL logger for failing tests. When combined with --verbosity=2, it also
outputs the SQL for passing tests.
Thanks to Berker, Tim, Markus, Shai, Josh and Anssi for review and
discussion.
2015-01-12 08:16:08 +00:00
Tim Graham
82e4f956e3
Fixed #23289 -- Added mock as a test dependency.
2014-12-01 16:08:25 -05:00
wrwrwr
e22c64dfc0
Fixed #23742 -- Added an option to reverse tests order.
...
This is useful for debugging side effects affecting tests that
are usually executed before a given test. Full suite and pair
tests sort cases more or less deterministically, thus some test
cross-dependencies are easier to reveal by reversing the order.
Thanks Preston Timmons for the review.
2014-11-24 19:24:11 -05:00
wrwrwr
31f85bae1e
Changed test_runner imports to name objects imported from test.runner.
2014-11-24 17:31:39 -05:00
Berker Peksag
f7969b0920
Fixed #23620 -- Used more specific assertions in the Django test suite.
2014-11-03 11:56:37 -05:00
Claude Paroz
45db842c9b
Fixed #23652 -- Restored database name after destroying test database
...
Thanks Bjarkias for the report.
2014-10-24 17:04:43 +02:00
Claude Paroz
2c9a03d487
Fixed #23707 -- Prevented discovery of duplicated tests
2014-10-23 21:03:57 +02:00
Claude Paroz
bbc3505ef8
Removed unneeded override_system_checks
...
Refs #23685 .
2014-10-21 20:54:32 +02:00
Tim Graham
a4f23eba2e
Fixed #23421 -- Corrected TEST SERIALIZE setting.
...
Thanks gkoller for the report.
2014-09-24 14:46:10 -04:00
Claude Paroz
4b4524291a
Converted test management command to argparse
...
Keeping backwards compatibility with test_runner.option_list is
tricky and would imply transforming an optparse.Option to an
argparse.Action. I choose to introduce a backwards incompatible
change because it only affects testing, not runtime behavior.
2014-06-14 13:43:39 +02:00
Andrew Godwin
7018bcfb71
Fix broken alias testing test
2014-06-08 20:07:35 -07:00
Greg Chapple
72f055e535
Fixed #20550 -- Added keepdb argument to destroy_test_db
2014-06-05 23:17:27 +01:00
Greg Chapple
b7aa7c4ab4
Fixed #20550 -- Added ability to preserve test db between runs
2014-05-28 16:22:46 +01:00
Nikolaus Schlemm
d11e836203
cater for running tests from another directory than tests - applying existing pattern to newly added test_testcase_ordering as well
2014-05-16 12:11:35 +02:00
Preston Timmons
251e833c75
Removed old test runner test cases.
...
These files were added as part of #12658 , which pertained to the old django.test.simple test runner. No tests call them anymore.
2014-04-20 22:00:39 -05:00
Simon Charette
79f05616fb
Fixed flake8 warnings introduced in recent commits.
2014-04-16 16:49:37 -04:00
Claude Paroz
3e3a7372f5
Fixed #22102 -- Made SimpleTestCase tests run before unittest.TestCase ones
...
Thanks aptiko for the reporti and Tim Graham for the review.
2014-04-12 11:42:06 +02:00
Tim Graham
bf5430a20b
Removed django.test.simple and django.test._doctest per deprecation timeline.
...
refs #17365 , #17366 , #18727 .
2014-03-21 13:36:46 -04:00
Claude Paroz
c564277937
Fixed #22237 -- Removed some warnings in the test suite
...
Thanks Aymeric Augustin for the report.
2014-03-09 22:10:49 +01:00