Fixed #12979 -- allowed using savepoints in TestCase (i.e. tests with transactions disabled), convert the GetOrCreate tests to use this.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@14061 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
c93f5e5d0e
commit
80aa4432e6
|
@ -37,8 +37,6 @@ real_commit = transaction.commit
|
||||||
real_rollback = transaction.rollback
|
real_rollback = transaction.rollback
|
||||||
real_enter_transaction_management = transaction.enter_transaction_management
|
real_enter_transaction_management = transaction.enter_transaction_management
|
||||||
real_leave_transaction_management = transaction.leave_transaction_management
|
real_leave_transaction_management = transaction.leave_transaction_management
|
||||||
real_savepoint_commit = transaction.savepoint_commit
|
|
||||||
real_savepoint_rollback = transaction.savepoint_rollback
|
|
||||||
real_managed = transaction.managed
|
real_managed = transaction.managed
|
||||||
|
|
||||||
def nop(*args, **kwargs):
|
def nop(*args, **kwargs):
|
||||||
|
@ -47,8 +45,6 @@ def nop(*args, **kwargs):
|
||||||
def disable_transaction_methods():
|
def disable_transaction_methods():
|
||||||
transaction.commit = nop
|
transaction.commit = nop
|
||||||
transaction.rollback = nop
|
transaction.rollback = nop
|
||||||
transaction.savepoint_commit = nop
|
|
||||||
transaction.savepoint_rollback = nop
|
|
||||||
transaction.enter_transaction_management = nop
|
transaction.enter_transaction_management = nop
|
||||||
transaction.leave_transaction_management = nop
|
transaction.leave_transaction_management = nop
|
||||||
transaction.managed = nop
|
transaction.managed = nop
|
||||||
|
@ -56,8 +52,6 @@ def disable_transaction_methods():
|
||||||
def restore_transaction_methods():
|
def restore_transaction_methods():
|
||||||
transaction.commit = real_commit
|
transaction.commit = real_commit
|
||||||
transaction.rollback = real_rollback
|
transaction.rollback = real_rollback
|
||||||
transaction.savepoint_commit = real_savepoint_commit
|
|
||||||
transaction.savepoint_rollback = real_savepoint_rollback
|
|
||||||
transaction.enter_transaction_management = real_enter_transaction_management
|
transaction.enter_transaction_management = real_enter_transaction_management
|
||||||
transaction.leave_transaction_management = real_leave_transaction_management
|
transaction.leave_transaction_management = real_leave_transaction_management
|
||||||
transaction.managed = real_managed
|
transaction.managed = real_managed
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
from datetime import date
|
from datetime import date
|
||||||
|
|
||||||
from django.db import IntegrityError
|
from django.db import IntegrityError
|
||||||
from django.test import TransactionTestCase
|
from django.test import TestCase
|
||||||
|
|
||||||
from models import Person, ManualPrimaryKeyTest
|
from models import Person, ManualPrimaryKeyTest
|
||||||
|
|
||||||
|
|
||||||
class GetOrCreateTests(TransactionTestCase):
|
class GetOrCreateTests(TestCase):
|
||||||
def test_get_or_create(self):
|
def test_get_or_create(self):
|
||||||
p = Person.objects.create(
|
p = Person.objects.create(
|
||||||
first_name='John', last_name='Lennon', birthday=date(1940, 10, 9)
|
first_name='John', last_name='Lennon', birthday=date(1940, 10, 9)
|
||||||
|
|
Loading…
Reference in New Issue