Add support for DATABASE_SUPPORTS_TRANSACTIONS to django.contrib.gis.tests.run_tests
After r9756, it's no longer possible to run a full test suite for a set of applications (a Django "project") when using the gis test runner. This is because we need to set up DATABASE_SUPPORTS_TRANSACTIONS
, which is used by, at a minimum, the auth tests.
This seems like the tip of the iceberg in some ways, though. There's already a handy function to help with this, but it's part of django.db.backends.creation.BaseDatabaseCreation
, which django.contrib.gis
doesn't use at all for creating test databases. I suspect the solution is to break up the BaseDatabaseCreation
class into basic stuff and test stuff so that gis can use the subclass the latter.
It's also used by any unit test that subclasses
django.test.TestCase
. The attached patch adds this setting; MySQL and Oracle shouldn't be affected because it's only PostGIS that really uses something different than the defaultconnection.creation.create_test_db
.