Fixed #27035 -- Eased changing settings.DEBUG for DiscoverRunner.
This commit is contained in:
parent
ac1975b18b
commit
a3a5ef4d0e
|
@ -360,7 +360,7 @@ class DiscoverRunner(object):
|
|||
|
||||
def __init__(self, pattern=None, top_level=None, verbosity=1,
|
||||
interactive=True, failfast=False, keepdb=False,
|
||||
reverse=False, debug_sql=False, parallel=0,
|
||||
reverse=False, debug_mode=False, debug_sql=False, parallel=0,
|
||||
tags=None, exclude_tags=None, **kwargs):
|
||||
|
||||
self.pattern = pattern
|
||||
|
@ -370,6 +370,7 @@ class DiscoverRunner(object):
|
|||
self.failfast = failfast
|
||||
self.keepdb = keepdb
|
||||
self.reverse = reverse
|
||||
self.debug_mode = debug_mode
|
||||
self.debug_sql = debug_sql
|
||||
self.parallel = parallel
|
||||
self.tags = set(tags or [])
|
||||
|
@ -413,7 +414,7 @@ class DiscoverRunner(object):
|
|||
|
||||
def setup_test_environment(self, **kwargs):
|
||||
setup_test_environment()
|
||||
settings.DEBUG = False
|
||||
settings.DEBUG = self.debug_mode
|
||||
unittest.installHandler()
|
||||
|
||||
def build_suite(self, test_labels=None, extra_tests=None, **kwargs):
|
||||
|
|
|
@ -259,6 +259,10 @@ Tests
|
|||
* Added :meth:`.DiscoverRunner.get_test_runner_kwargs` to allow customizing the
|
||||
keyword arguments passed to the test runner.
|
||||
|
||||
* Added the ``debug_mode`` keyword argument to
|
||||
:class:`~django.test.runner.DiscoverRunner` to make it easier to customize
|
||||
the :setting:`DEBUG` setting when running tests.
|
||||
|
||||
URLs
|
||||
~~~~
|
||||
|
||||
|
|
|
@ -427,7 +427,7 @@ behavior. This class defines the ``run_tests()`` entry point, plus a
|
|||
selection of other methods that are used to by ``run_tests()`` to set up,
|
||||
execute and tear down the test suite.
|
||||
|
||||
.. class:: DiscoverRunner(pattern='test*.py', top_level=None, verbosity=1, interactive=True, failfast=False, keepdb=False, reverse=False, debug_sql=False, **kwargs)
|
||||
.. class:: DiscoverRunner(pattern='test*.py', top_level=None, verbosity=1, interactive=True, failfast=False, keepdb=False, reverse=False, debug_mode=False, debug_sql=False, **kwargs)
|
||||
|
||||
``DiscoverRunner`` will search for tests in any file matching ``pattern``.
|
||||
|
||||
|
@ -458,6 +458,9 @@ execute and tear down the test suite.
|
|||
and have side effects. :ref:`Grouping by test class <order-of-tests>` is
|
||||
preserved when using this option.
|
||||
|
||||
``debug_mode`` specifies what the :setting:`DEBUG` setting should be
|
||||
set to prior to running tests.
|
||||
|
||||
If ``debug_sql`` is ``True``, failing test cases will output SQL queries
|
||||
logged to the :ref:`django.db.backends logger <django-db-logger>` as well
|
||||
as the traceback. If ``verbosity`` is ``2``, then queries in all tests are
|
||||
|
@ -473,6 +476,10 @@ execute and tear down the test suite.
|
|||
custom arguments by calling ``parser.add_argument()`` inside the method, so
|
||||
that the :djadmin:`test` command will be able to use those arguments.
|
||||
|
||||
.. versionadded:: 1.11
|
||||
|
||||
The ``debug_mode`` keyword argument was added.
|
||||
|
||||
Attributes
|
||||
~~~~~~~~~~
|
||||
|
||||
|
@ -526,7 +533,7 @@ Methods
|
|||
|
||||
Sets up the test environment by calling
|
||||
:func:`~django.test.utils.setup_test_environment` and setting
|
||||
:setting:`DEBUG` to ``False``.
|
||||
:setting:`DEBUG` to ``self.debug_mode`` (defaults to ``False``).
|
||||
|
||||
.. method:: DiscoverRunner.build_suite(test_labels, extra_tests=None, **kwargs)
|
||||
|
||||
|
|
|
@ -20,6 +20,10 @@ def change_cwd(directory):
|
|||
|
||||
class DiscoverRunnerTest(TestCase):
|
||||
|
||||
def test_init_debug_mode(self):
|
||||
runner = DiscoverRunner()
|
||||
self.assertFalse(runner.debug_mode)
|
||||
|
||||
def test_dotted_test_module(self):
|
||||
count = DiscoverRunner().build_suite(
|
||||
["test_discovery_sample.tests_sample"],
|
||||
|
|
Loading…
Reference in New Issue