Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

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.