summaryrefslogtreecommitdiff
path: root/tests/check_framework
diff options
context:
space:
mode:
Diffstat (limited to 'tests/check_framework')
-rw-r--r--tests/check_framework/test_model_field_deprecation.py9
-rw-r--r--tests/check_framework/test_multi_db.py7
-rw-r--r--tests/check_framework/tests.py27
3 files changed, 16 insertions, 27 deletions
diff --git a/tests/check_framework/test_model_field_deprecation.py b/tests/check_framework/test_model_field_deprecation.py
index ce30803a61..21ece86bd4 100644
--- a/tests/check_framework/test_model_field_deprecation.py
+++ b/tests/check_framework/test_model_field_deprecation.py
@@ -1,11 +1,11 @@
from django.core import checks
from django.db import models
from django.test import SimpleTestCase
+from django.test.utils import isolate_apps
-from .tests import IsolateModelsMixin
-
-class TestDeprecatedField(IsolateModelsMixin, SimpleTestCase):
+@isolate_apps('check_framework')
+class TestDeprecatedField(SimpleTestCase):
def test_default_details(self):
class MyField(models.Field):
system_check_deprecated_details = {}
@@ -45,7 +45,8 @@ class TestDeprecatedField(IsolateModelsMixin, SimpleTestCase):
])
-class TestRemovedField(IsolateModelsMixin, SimpleTestCase):
+@isolate_apps('check_framework')
+class TestRemovedField(SimpleTestCase):
def test_default_details(self):
class MyField(models.Field):
system_check_removed_details = {}
diff --git a/tests/check_framework/test_multi_db.py b/tests/check_framework/test_multi_db.py
index 168b2ea33f..bfbeab0029 100644
--- a/tests/check_framework/test_multi_db.py
+++ b/tests/check_framework/test_multi_db.py
@@ -1,8 +1,6 @@
from django.db import connections, models
from django.test import TestCase, mock
-from django.test.utils import override_settings
-
-from .tests import IsolateModelsMixin
+from django.test.utils import isolate_apps, override_settings
class TestRouter(object):
@@ -14,7 +12,8 @@ class TestRouter(object):
@override_settings(DATABASE_ROUTERS=[TestRouter()])
-class TestMultiDBChecks(IsolateModelsMixin, TestCase):
+@isolate_apps('check_framework')
+class TestMultiDBChecks(TestCase):
multi_db = True
def _patch_check_field_on(self, db):
diff --git a/tests/check_framework/tests.py b/tests/check_framework/tests.py
index 7ae7b633e0..90b8a944f0 100644
--- a/tests/check_framework/tests.py
+++ b/tests/check_framework/tests.py
@@ -11,7 +11,9 @@ from django.core.management import call_command
from django.core.management.base import CommandError
from django.db import models
from django.test import SimpleTestCase
-from django.test.utils import override_settings, override_system_checks
+from django.test.utils import (
+ isolate_apps, override_settings, override_system_checks,
+)
from django.utils.encoding import force_text
from django.utils.six import StringIO
@@ -254,23 +256,10 @@ class SilencingCheckTests(SimpleTestCase):
self.assertEqual(err.getvalue(), '')
-class IsolateModelsMixin(object):
- def setUp(self):
- self.current_models = apps.all_models[__package__]
- self.saved_models = set(self.current_models)
-
- def tearDown(self):
- for model in (set(self.current_models) - self.saved_models):
- del self.current_models[model]
- apps.clear_cache()
-
-
-class CheckFrameworkReservedNamesTests(IsolateModelsMixin, SimpleTestCase):
- @override_settings(
- SILENCED_SYSTEM_CHECKS=['models.E20', 'fields.W342'], # ForeignKey(unique=True)
- INSTALLED_APPS=['django.contrib.auth', 'django.contrib.contenttypes', 'check_framework']
- )
- def test_model_check_method_not_shadowed(self):
+class CheckFrameworkReservedNamesTests(SimpleTestCase):
+ @isolate_apps('check_framework', kwarg_name='apps')
+ @override_system_checks([checks.model_checks.check_all_models])
+ def test_model_check_method_not_shadowed(self, apps):
class ModelWithAttributeCalledCheck(models.Model):
check = 42
@@ -288,7 +277,7 @@ class CheckFrameworkReservedNamesTests(IsolateModelsMixin, SimpleTestCase):
related_name='check',
)
- errors = checks.run_checks()
+ errors = checks.run_checks(app_configs=apps.get_app_configs())
expected = [
Error(
"The 'ModelWithAttributeCalledCheck.check()' class method is "