Browse files

[1.5.x] Stopped a test from executing queries at the module level.

Currently module level queries are executed against the real database
(specified in NAME) instead of the test database; since it is to late
to fix this for 1.6, we at least ensures stable builds. Refs #21443.

Backport of 4fcc1e4 from master.
  • Loading branch information...
1 parent 18fe77e commit 1fa8c612fc764c456f4d838805ff7fd5634b1e16 @apollo13 apollo13 committed Sep 22, 2013
Showing with 6 additions and 4 deletions.
  1. +6 −4 tests/regressiontests/transactions_regress/
@@ -4,7 +4,7 @@
from django.db.transaction import commit_on_success, commit_manually, TransactionManagementError
from django.test import TransactionTestCase, skipUnlessDBFeature
from django.test.utils import override_settings
-from django.utils.unittest import skipIf, skipUnless
+from django.utils.unittest import skipIf, skipUnless, SkipTest
from .models import Mod, M2mA, M2mB
@@ -247,11 +247,13 @@ def work():
- @skipIf(connection.vendor == 'mysql' and \
- connection.features._mysql_storage_engine == 'MyISAM',
- "MyISAM MySQL storage engine doesn't support savepoints")
def test_savepoint_rollback(self):
+ # _mysql_storage_engine issues a query and as such can't be applied in
+ # a skipIf decorator since that would execute the query on module load.
+ if (connection.vendor == 'mysql' and
+ connection.features._mysql_storage_engine == 'MyISAM'):
+ raise SkipTest("MyISAM MySQL storage engine doesn't support savepoints")
def work():
mod = Mod.objects.create(fld=1)

0 comments on commit 1fa8c61

Please sign in to comment.