Loading django/contrib/auth/checks.py +15 −3 Original line number Diff line number Diff line Loading @@ -6,10 +6,22 @@ from django.conf import settings from django.core import checks def check_user_model(**kwargs): errors = [] def check_user_model(app_configs=None, **kwargs): if app_configs is None: cls = apps.get_model(settings.AUTH_USER_MODEL) else: app_label, model_name = settings.AUTH_USER_MODEL.split('.') for app_config in app_configs: if app_config.label == app_label: cls = app_config.get_model(model_name) break else: # Checks might be run against a set of app configs that don't # include the specified user model. In this case we simply don't # perform the checks defined below. return [] errors = [] # Check that REQUIRED_FIELDS is a list if not isinstance(cls.REQUIRED_FIELDS, (list, tuple)): Loading django/contrib/contenttypes/checks.py +9 −3 Original line number Diff line number Diff line # -*- coding: utf-8 -*- from __future__ import unicode_literals from itertools import chain from django.apps import apps from django.utils import six def check_generic_foreign_keys(**kwargs): def check_generic_foreign_keys(app_configs=None, **kwargs): from .fields import GenericForeignKey if app_configs is None: models = apps.get_models() else: models = chain.from_iterable(app_config.get_models() for app_config in app_configs) errors = [] fields = (obj for cls in apps.get_models() for obj in six.itervalues(vars(cls)) for model in models for obj in six.itervalues(vars(model)) if isinstance(obj, GenericForeignKey)) for field in fields: errors.extend(field.check()) Loading django/core/checks/model_checks.py +18 −14 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ from __future__ import unicode_literals import inspect import types from itertools import chain from django.apps import apps from django.core.checks import Error, Tags, register Loading @@ -11,8 +12,11 @@ from django.core.checks import Error, Tags, register @register(Tags.models) def check_all_models(app_configs=None, **kwargs): errors = [] for model in apps.get_models(): if app_configs is None or model._meta.app_config in app_configs: if app_configs is None: models = apps.get_models() else: models = chain.from_iterable(app_config.get_models() for app_config in app_configs) for model in models: if not inspect.ismethod(model.check): errors.append( Error( Loading tests/absolute_url_overrides/tests.py +2 −0 Original line number Diff line number Diff line from django.db import models from django.test import SimpleTestCase from django.test.utils import isolate_apps @isolate_apps('absolute_url_overrides') class AbsoluteUrlOverrideTests(SimpleTestCase): def test_get_absolute_url(self): Loading tests/apps/tests.py +3 −2 Original line number Diff line number Diff line Loading @@ -9,7 +9,7 @@ from django.contrib.admin.models import LogEntry from django.core.exceptions import AppRegistryNotReady, ImproperlyConfigured from django.db import models from django.test import SimpleTestCase, override_settings from django.test.utils import extend_sys_path from django.test.utils import extend_sys_path, isolate_apps from django.utils import six from django.utils._os import upath Loading Loading @@ -260,7 +260,8 @@ class AppsTests(SimpleTestCase): finally: apps.apps_ready = True def test_lazy_model_operation(self): @isolate_apps('apps', kwarg_name='apps') def test_lazy_model_operation(self, apps): """ Tests apps.lazy_model_operation(). """ Loading Loading
django/contrib/auth/checks.py +15 −3 Original line number Diff line number Diff line Loading @@ -6,10 +6,22 @@ from django.conf import settings from django.core import checks def check_user_model(**kwargs): errors = [] def check_user_model(app_configs=None, **kwargs): if app_configs is None: cls = apps.get_model(settings.AUTH_USER_MODEL) else: app_label, model_name = settings.AUTH_USER_MODEL.split('.') for app_config in app_configs: if app_config.label == app_label: cls = app_config.get_model(model_name) break else: # Checks might be run against a set of app configs that don't # include the specified user model. In this case we simply don't # perform the checks defined below. return [] errors = [] # Check that REQUIRED_FIELDS is a list if not isinstance(cls.REQUIRED_FIELDS, (list, tuple)): Loading
django/contrib/contenttypes/checks.py +9 −3 Original line number Diff line number Diff line # -*- coding: utf-8 -*- from __future__ import unicode_literals from itertools import chain from django.apps import apps from django.utils import six def check_generic_foreign_keys(**kwargs): def check_generic_foreign_keys(app_configs=None, **kwargs): from .fields import GenericForeignKey if app_configs is None: models = apps.get_models() else: models = chain.from_iterable(app_config.get_models() for app_config in app_configs) errors = [] fields = (obj for cls in apps.get_models() for obj in six.itervalues(vars(cls)) for model in models for obj in six.itervalues(vars(model)) if isinstance(obj, GenericForeignKey)) for field in fields: errors.extend(field.check()) Loading
django/core/checks/model_checks.py +18 −14 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ from __future__ import unicode_literals import inspect import types from itertools import chain from django.apps import apps from django.core.checks import Error, Tags, register Loading @@ -11,8 +12,11 @@ from django.core.checks import Error, Tags, register @register(Tags.models) def check_all_models(app_configs=None, **kwargs): errors = [] for model in apps.get_models(): if app_configs is None or model._meta.app_config in app_configs: if app_configs is None: models = apps.get_models() else: models = chain.from_iterable(app_config.get_models() for app_config in app_configs) for model in models: if not inspect.ismethod(model.check): errors.append( Error( Loading
tests/absolute_url_overrides/tests.py +2 −0 Original line number Diff line number Diff line from django.db import models from django.test import SimpleTestCase from django.test.utils import isolate_apps @isolate_apps('absolute_url_overrides') class AbsoluteUrlOverrideTests(SimpleTestCase): def test_get_absolute_url(self): Loading
tests/apps/tests.py +3 −2 Original line number Diff line number Diff line Loading @@ -9,7 +9,7 @@ from django.contrib.admin.models import LogEntry from django.core.exceptions import AppRegistryNotReady, ImproperlyConfigured from django.db import models from django.test import SimpleTestCase, override_settings from django.test.utils import extend_sys_path from django.test.utils import extend_sys_path, isolate_apps from django.utils import six from django.utils._os import upath Loading Loading @@ -260,7 +260,8 @@ class AppsTests(SimpleTestCase): finally: apps.apps_ready = True def test_lazy_model_operation(self): @isolate_apps('apps', kwarg_name='apps') def test_lazy_model_operation(self, apps): """ Tests apps.lazy_model_operation(). """ Loading