diff options
| author | Sergey Fedoseev <fedoseev.sergey@gmail.com> | 2017-08-22 00:34:20 +0500 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2017-08-21 15:34:20 -0400 |
| commit | 30eb92fc1199931d3743cd20b39f38eff7d30489 (patch) | |
| tree | de552dc3053e5385bfb13f2fd9be34672e785b26 /django | |
| parent | 8d095c6378666e6d5f6cabc9e485c9db2618ff88 (diff) | |
Removed need for hasattr(check, 'tags') in CheckRegistry.
It was needed to pass tests because registered checks weren't properly mocked.
Diffstat (limited to 'django')
| -rw-r--r-- | django/core/checks/registry.py | 7 | ||||
| -rw-r--r-- | django/test/utils.py | 8 |
2 files changed, 8 insertions, 7 deletions
diff --git a/django/core/checks/registry.py b/django/core/checks/registry.py index a2bb71ea37..6e2657b0fb 100644 --- a/django/core/checks/registry.py +++ b/django/core/checks/registry.py @@ -66,13 +66,11 @@ class CheckRegistry: checks = self.get_checks(include_deployment_checks) if tags is not None: - checks = [check for check in checks - if hasattr(check, 'tags') and not set(check.tags).isdisjoint(tags)] + checks = [check for check in checks if not set(check.tags).isdisjoint(tags)] else: # By default, 'database'-tagged checks are not run as they do more # than mere static code analysis. - checks = [check for check in checks - if not hasattr(check, 'tags') or Tags.database not in check.tags] + checks = [check for check in checks if Tags.database not in check.tags] for check in checks: new_errors = check(app_configs=app_configs) @@ -88,7 +86,6 @@ class CheckRegistry: def tags_available(self, deployment_checks=False): return set(chain.from_iterable( check.tags for check in self.get_checks(deployment_checks) - if hasattr(check, 'tags') )) def get_checks(self, include_deployment_checks=False): diff --git a/django/test/utils.py b/django/test/utils.py index bf849ae0d1..e1cca58b27 100644 --- a/django/test/utils.py +++ b/django/test/utils.py @@ -499,10 +499,14 @@ class override_system_checks(TestContextDecorator): def enable(self): self.old_checks = self.registry.registered_checks - self.registry.registered_checks = self.new_checks + self.registry.registered_checks = [] + for check in self.new_checks: + self.registry.register(check, *getattr(check, 'tags', ())) self.old_deployment_checks = self.registry.deployment_checks if self.deployment_checks is not None: - self.registry.deployment_checks = self.deployment_checks + self.registry.deployment_checks = [] + for check in self.deployment_checks: + self.registry.register(check, *getattr(check, 'tags', ()), deploy=True) def disable(self): self.registry.registered_checks = self.old_checks |
