diff options
| author | Ramiro Morales <cramm0@gmail.com> | 2013-01-31 14:56:26 -0300 |
|---|---|---|
| committer | Ramiro Morales <cramm0@gmail.com> | 2013-01-31 14:57:45 -0300 |
| commit | 7947c9e3a6bd8c1dfe7fc209fb2256a528149bb6 (patch) | |
| tree | aaec5644d25ad799fd7f4c3d5d9482933aeb9f20 /django | |
| parent | 9a4a1ce323237d0aadafbddcd270c47be251bac2 (diff) | |
Deprecated undocumented warnings manipulation testing tools.
Diffstat (limited to 'django')
| -rw-r--r-- | django/test/testcases.py | 21 | ||||
| -rw-r--r-- | django/test/utils.py | 7 |
2 files changed, 21 insertions, 7 deletions
diff --git a/django/test/testcases.py b/django/test/testcases.py index c311540fc3..3aa0afa35e 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -1,12 +1,13 @@ from __future__ import unicode_literals +from copy import copy import difflib +import errno +from functools import wraps import json import os import re import sys -from copy import copy -from functools import wraps try: from urllib.parse import urlsplit, urlunsplit except ImportError: # Python 2 @@ -14,7 +15,7 @@ except ImportError: # Python 2 import select import socket import threading -import errno +import warnings from django.conf import settings from django.contrib.staticfiles.handlers import StaticFilesHandler @@ -36,8 +37,7 @@ from django.test import _doctest as doctest from django.test.client import Client from django.test.html import HTMLParseError, parse_html from django.test.signals import template_rendered -from django.test.utils import (get_warnings_state, restore_warnings_state, - override_settings, compare_xml, strip_quotes) +from django.test.utils import (override_settings, compare_xml, strip_quotes) from django.test.utils import ContextList from django.utils import unittest as ut2 from django.utils.encoding import force_text @@ -241,6 +241,11 @@ class _AssertTemplateNotUsedContext(_AssertTemplateUsedContext): class SimpleTestCase(ut2.TestCase): + + _warn_txt = ("save_warnings_state/restore_warnings_state " + "django.test.*TestCase methods are deprecated. Use Python's " + "warnings.catch_warnings context manager instead.") + def __call__(self, result=None): """ Wrapper around default __call__ method to perform common Django test @@ -279,14 +284,16 @@ class SimpleTestCase(ut2.TestCase): """ Saves the state of the warnings module """ - self._warnings_state = get_warnings_state() + warnings.warn(self._warn_txt, DeprecationWarning, stacklevel=2) + self._warnings_state = warnings.filters[:] def restore_warnings_state(self): """ Restores the state of the warnings module to the state saved by save_warnings_state() """ - restore_warnings_state(self._warnings_state) + warnings.warn(self._warn_txt, DeprecationWarning, stacklevel=2) + warnings.filters = self._warnings_state[:] def settings(self, **kwargs): """ diff --git a/django/test/utils.py b/django/test/utils.py index 8114ae0e6a..9413ea8dc4 100644 --- a/django/test/utils.py +++ b/django/test/utils.py @@ -98,6 +98,11 @@ def teardown_test_environment(): del mail.outbox +warn_txt = ("get_warnings_state/restore_warnings_state functions from " + "django.test.utils are deprecated. Use Python's warnings.catch_warnings() " + "context manager instead.") + + def get_warnings_state(): """ Returns an object containing the state of the warnings module @@ -105,6 +110,7 @@ def get_warnings_state(): # There is no public interface for doing this, but this implementation of # get_warnings_state and restore_warnings_state appears to work on Python # 2.4 to 2.7. + warnings.warn(warn_txt, DeprecationWarning, stacklevel=2) return warnings.filters[:] @@ -113,6 +119,7 @@ def restore_warnings_state(state): Restores the state of the warnings module when passed an object that was returned by get_warnings_state() """ + warnings.warn(warn_txt, DeprecationWarning, stacklevel=2) warnings.filters = state[:] |
