Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Removed tests for django.utils.unittest vs. unittest.

Silenced warnings caused by the deprecation of django.utils.unittest.

Thanks Preston Timmons and Carl Meyer for their advice.

Fixed #20680.
  • Loading branch information...
commit 909433fa506dc3c8412cecb4439049acb9a3f447 1 parent a521d10
@aaugustin aaugustin authored
View
2  django/test/simple.py
@@ -12,6 +12,8 @@
from django.test import _doctest as doctest
from django.test import runner
from django.test.utils import compare_xml, strip_quotes
+# django.utils.unittest is deprecated, but so is django.test.simple,
+# and the latter will be removed before the former.
from django.utils import unittest
from django.utils.importlib import import_module
from django.utils.module_loading import module_has_submodule
View
12 django/test/utils.py
@@ -377,13 +377,14 @@ def __exit__(self, exc_type, exc_value, traceback):
class IgnoreDeprecationWarningsMixin(object):
- warning_class = DeprecationWarning
+ warning_classes = [DeprecationWarning]
def setUp(self):
super(IgnoreDeprecationWarningsMixin, self).setUp()
self.catch_warnings = warnings.catch_warnings()
self.catch_warnings.__enter__()
- warnings.filterwarnings("ignore", category=self.warning_class)
+ for warning_class in self.warning_classes:
+ warnings.filterwarnings("ignore", category=warning_class)
def tearDown(self):
self.catch_warnings.__exit__(*sys.exc_info())
@@ -392,7 +393,12 @@ def tearDown(self):
class IgnorePendingDeprecationWarningsMixin(IgnoreDeprecationWarningsMixin):
- warning_class = PendingDeprecationWarning
+ warning_classes = [PendingDeprecationWarning]
+
+
+class IgnoreAllDeprecationWarningsMixin(IgnoreDeprecationWarningsMixin):
+
+ warning_classes = [PendingDeprecationWarning, DeprecationWarning]
@contextmanager
View
11 tests/test_discovery_sample/tests_sample.py
@@ -1,16 +1,9 @@
-from unittest import TestCase as UnitTestCase
+from unittest import TestCase
from django.test import TestCase as DjangoTestCase
-from django.utils.unittest import TestCase as UT2TestCase
-class TestVanillaUnittest(UnitTestCase):
-
- def test_sample(self):
- self.assertEqual(1, 1)
-
-
-class TestUnittest2(UT2TestCase):
+class TestVanillaUnittest(TestCase):
def test_sample(self):
self.assertEqual(1, 1)
View
33 tests/test_runner/test_discover_runner.py
@@ -6,11 +6,6 @@
from django.test import TestCase
from django.test.runner import DiscoverRunner
-try:
- import unittest2
-except ImportError:
- unittest2 = None
-
def expectedFailureIf(condition):
"""Marks a test as an expected failure if ``condition`` is met."""
@@ -26,7 +21,7 @@ def test_dotted_test_module(self):
["test_discovery_sample.tests_sample"],
).countTestCases()
- self.assertEqual(count, 3)
+ self.assertEqual(count, 2)
def test_dotted_test_class_vanilla_unittest(self):
count = DiscoverRunner().build_suite(
@@ -35,13 +30,6 @@ def test_dotted_test_class_vanilla_unittest(self):
self.assertEqual(count, 1)
- def test_dotted_test_class_unittest2(self):
- count = DiscoverRunner().build_suite(
- ["test_discovery_sample.tests_sample.TestUnittest2"],
- ).countTestCases()
-
- self.assertEqual(count, 1)
-
def test_dotted_test_class_django_testcase(self):
count = DiscoverRunner().build_suite(
["test_discovery_sample.tests_sample.TestDjangoTestCase"],
@@ -49,23 +37,6 @@ def test_dotted_test_class_django_testcase(self):
self.assertEqual(count, 1)
- # this test fails if unittest2 is installed from PyPI on Python 2.6
- # refs https://code.djangoproject.com/ticket/20437
- @expectedFailureIf(sys.version_info < (2, 7) and unittest2)
- def test_dotted_test_method_vanilla_unittest(self):
- count = DiscoverRunner().build_suite(
- ["test_discovery_sample.tests_sample.TestVanillaUnittest.test_sample"],
- ).countTestCases()
-
- self.assertEqual(count, 1)
-
- def test_dotted_test_method_unittest2(self):
- count = DiscoverRunner().build_suite(
- ["test_discovery_sample.tests_sample.TestUnittest2.test_sample"],
- ).countTestCases()
-
- self.assertEqual(count, 1)
-
def test_dotted_test_method_django_testcase(self):
count = DiscoverRunner().build_suite(
["test_discovery_sample.tests_sample.TestDjangoTestCase.test_sample"],
@@ -96,4 +67,4 @@ def change_cwd_to_tests():
["test_discovery_sample/"],
).countTestCases()
- self.assertEqual(count, 4)
+ self.assertEqual(count, 3)
View
5 tests/test_runner/tests.py
@@ -12,7 +12,7 @@
from django import db
from django.test import runner, TestCase, TransactionTestCase, skipUnlessDBFeature
from django.test.testcases import connections_support_transactions
-from django.test.utils import IgnoreDeprecationWarningsMixin
+from django.test.utils import IgnoreAllDeprecationWarningsMixin
from django.utils.importlib import import_module
from admin_scripts.tests import AdminScriptTestCase
@@ -225,7 +225,8 @@ def test_ticket_17477(self):
self.assertNoOutput(err)
-class ModulesTestsPackages(IgnoreDeprecationWarningsMixin, unittest.TestCase):
+class ModulesTestsPackages(IgnoreAllDeprecationWarningsMixin, unittest.TestCase):
+
def test_get_tests(self):
"Check that the get_tests helper function can find tests in a directory"
from django.test.simple import get_tests
View
5 tests/test_suite_override/tests.py
@@ -1,7 +1,7 @@
import unittest
from django.db.models import get_app
-from django.test.utils import IgnoreDeprecationWarningsMixin
+from django.test.utils import IgnoreAllDeprecationWarningsMixin
def suite():
@@ -10,7 +10,8 @@ def suite():
return testSuite
-class SuiteOverrideTest(IgnoreDeprecationWarningsMixin, unittest.TestCase):
+class SuiteOverrideTest(IgnoreAllDeprecationWarningsMixin, unittest.TestCase):
+
def test_suite_override(self):
"""
Validate that you can define a custom suite when running tests with
View
4 tests/test_utils/tests.py
@@ -10,7 +10,7 @@
from django.template.loader import render_to_string
from django.test import SimpleTestCase, TestCase, skipUnlessDBFeature
from django.test.html import HTMLParseError, parse_html
-from django.test.utils import CaptureQueriesContext, IgnoreDeprecationWarningsMixin
+from django.test.utils import CaptureQueriesContext, IgnoreAllDeprecationWarningsMixin
from django.utils import six
from .models import Person
@@ -592,7 +592,7 @@ class MyCustomField(IntegerField):
self.assertFieldOutput(MyCustomField, {}, {}, empty_value=None)
-class DoctestNormalizerTest(IgnoreDeprecationWarningsMixin, SimpleTestCase):
+class DoctestNormalizerTest(IgnoreAllDeprecationWarningsMixin, SimpleTestCase):
def test_normalizer(self):
from django.test.simple import make_doctest
Please sign in to comment.
Something went wrong with that request. Please try again.