Fixed #21029: Test for previously-commited SchemaEditor.__exit__ bug.

This commit is contained in:
Andrew Godwin 2013-09-06 11:46:33 -05:00
parent ffe21e1f40
commit 6f7977bb63
1 changed files with 13 additions and 0 deletions

View File

@ -643,3 +643,16 @@ class SchemaTests(TransactionTestCase):
self.assertTrue(
connection.introspection.get_indexes(connection.cursor(), Tag._meta.db_table)['slug']['primary_key'],
)
def test_context_manager_exit(self):
"""
Ensures transaction is correctly closed when an error occurs
inside a SchemaEditor context.
"""
class SomeError(Exception):
pass
try:
with connection.schema_editor() as editor:
raise SomeError
except SomeError:
self.assertFalse(connection.in_atomic_block)