From 0d3c616fbb2f49fa7ff6809e5a6777275352b35b Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Sat, 19 Mar 2016 12:15:09 +0100 Subject: Refs #26351 -- Added check hook to support database-related checks Thanks Tim Graham and Shai Berger for the reviews. --- tests/check_framework/test_database.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tests/check_framework/test_database.py (limited to 'tests/check_framework') diff --git a/tests/check_framework/test_database.py b/tests/check_framework/test_database.py new file mode 100644 index 0000000000..73edd6234c --- /dev/null +++ b/tests/check_framework/test_database.py @@ -0,0 +1,33 @@ +import unittest + +from django.core.checks import Tags, run_checks +from django.core.checks.registry import CheckRegistry +from django.db import connection +from django.test import TestCase, mock + + +class DatabaseCheckTests(TestCase): + @property + def func(self): + from django.core.checks.database import check_database_backends + return check_database_backends + + def test_database_checks_not_run_by_default(self): + """ + `database` checks are only run when their tag is specified. + """ + def f1(**kwargs): + return [5] + + registry = CheckRegistry() + registry.register(Tags.database)(f1) + errors = registry.run_checks() + self.assertEqual(errors, []) + + errors2 = registry.run_checks(tags=[Tags.database]) + self.assertEqual(errors2, [5]) + + def test_database_checks_called(self): + with mock.patch('django.db.backends.base.validation.BaseDatabaseValidation.check') as mocked_check: + run_checks(tags=[Tags.database]) + self.assertTrue(mocked_check.called) -- cgit v1.3