From e9a909e30ab63cc4faa28e4d9296f522bbe3bb06 Mon Sep 17 00:00:00 2001 From: Ramiro Morales Date: Wed, 10 Aug 2011 22:34:45 +0000 Subject: [PATCH] Fixed #16593 -- Refactored proxy_model_inheritance fixture setup to minimize the chances of leaving a modified INSTALLED_APPS setting for tests ran after it if setUp fails. Thanks Jim Dalton for the report and patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16593 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- .../modeltests/proxy_model_inheritance/tests.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/tests/modeltests/proxy_model_inheritance/tests.py b/tests/modeltests/proxy_model_inheritance/tests.py index 546c5077e2c..eb8e47b7261 100644 --- a/tests/modeltests/proxy_model_inheritance/tests.py +++ b/tests/modeltests/proxy_model_inheritance/tests.py @@ -13,24 +13,25 @@ from django.conf import settings from django.core.management import call_command from django.db.models.loading import load_app from django.test import TransactionTestCase +from django.test.utils import override_settings +# @override_settings(INSTALLED_APPS=('app1', 'app2')) class ProxyModelInheritanceTests(TransactionTestCase): def setUp(self): self.old_sys_path = sys.path[:] sys.path.append(os.path.dirname(os.path.abspath(__file__))) - self.old_installed_apps = settings.INSTALLED_APPS - settings.INSTALLED_APPS = ('app1', 'app2') map(load_app, settings.INSTALLED_APPS) + + def tearDown(self): + sys.path = self.old_sys_path + + def test_table_exists(self): call_command('syncdb', verbosity=0) global ProxyModel, NiceModel from app1.models import ProxyModel from app2.models import NiceModel - - def tearDown(self): - settings.INSTALLED_APPS = self.old_installed_apps - sys.path = self.old_sys_path - - def test_table_exists(self): self.assertEqual(NiceModel.objects.all().count(), 0) self.assertEqual(ProxyModel.objects.all().count(), 0) + +ProxyModelInheritanceTests = override_settings(INSTALLED_APPS=('app1', 'app2'))(ProxyModelInheritanceTests)