Fixed #23543 -- Added docs on testing management command output.
This commit is contained in:
parent
94e2d3913d
commit
cdee865976
|
@ -193,6 +193,12 @@ non-uniform locales, so you might need to:
|
||||||
differences when locales are changed and evaluate its impact on
|
differences when locales are changed and evaluate its impact on
|
||||||
predictable behavior of your command.
|
predictable behavior of your command.
|
||||||
|
|
||||||
|
Testing
|
||||||
|
=======
|
||||||
|
|
||||||
|
Information on how to test custom management commands can be found in the
|
||||||
|
:ref:`testing docs <topics-testing-management-commands>`.
|
||||||
|
|
||||||
Command objects
|
Command objects
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
|
|
@ -1623,6 +1623,25 @@ manually, assign the empty list to ``mail.outbox``::
|
||||||
# Empty the test outbox
|
# Empty the test outbox
|
||||||
mail.outbox = []
|
mail.outbox = []
|
||||||
|
|
||||||
|
.. _topics-testing-management-commands:
|
||||||
|
|
||||||
|
Management Commands
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Management commands can be tested with the
|
||||||
|
:func:`~django.core.management.call_command` function. The output can be
|
||||||
|
redirected into a ``StringIO`` instance::
|
||||||
|
|
||||||
|
from django.core.management import call_command
|
||||||
|
from django.test import TestCase
|
||||||
|
from django.utils.six import StringIO
|
||||||
|
|
||||||
|
class ClosepollTest(TestCase):
|
||||||
|
def test_command_output(self):
|
||||||
|
out = StringIO()
|
||||||
|
call_command('closepoll', stdout=out)
|
||||||
|
self.assertIn('Expected output', out.getvalue())
|
||||||
|
|
||||||
.. _skipping-tests:
|
.. _skipping-tests:
|
||||||
|
|
||||||
Skipping tests
|
Skipping tests
|
||||||
|
|
Loading…
Reference in New Issue