Author: ramiro
Date: 2011-08-10 15:34:45 -0700 (Wed, 10 Aug 2011)
New Revision: 16593

Modified:
   django/trunk/tests/modeltests/proxy_model_inheritance/tests.py
Log:
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.

Modified: django/trunk/tests/modeltests/proxy_model_inheritance/tests.py
===================================================================
--- django/trunk/tests/modeltests/proxy_model_inheritance/tests.py      
2011-08-10 22:26:34 UTC (rev 16592)
+++ django/trunk/tests/modeltests/proxy_model_inheritance/tests.py      
2011-08-10 22:34:45 UTC (rev 16593)
@@ -13,24 +13,25 @@
 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)
-        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):
+        call_command('syncdb', verbosity=0)
+        global ProxyModel, NiceModel
+        from app1.models import ProxyModel
+        from app2.models import NiceModel
         self.assertEqual(NiceModel.objects.all().count(), 0)
         self.assertEqual(ProxyModel.objects.all().count(), 0)
+
+ProxyModelInheritanceTests = override_settings(INSTALLED_APPS=('app1', 
'app2'))(ProxyModelInheritanceTests)

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com.
To unsubscribe from this group, send email to 
django-updates+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en.

Reply via email to