mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
Remove deprecated Tester class from doctest module.
This commit is contained in:
parent
bf086a1eb3
commit
3183585a86
3 changed files with 16 additions and 215 deletions
|
@ -2285,132 +2285,6 @@ using the optional keyword argument `encoding`:
|
|||
>>> doctest.master = None # Reset master.
|
||||
"""
|
||||
|
||||
# old_test1, ... used to live in doctest.py, but cluttered it. Note
|
||||
# that these use the deprecated doctest.Tester, so should go away (or
|
||||
# be rewritten) someday.
|
||||
|
||||
# Ignore all warnings about the use of class Tester in this module.
|
||||
# Note that the name of this module may differ depending on how it's
|
||||
# imported, so the use of __name__ is important.
|
||||
warnings.filterwarnings("ignore", "class Tester", DeprecationWarning,
|
||||
__name__, 0)
|
||||
|
||||
def old_test1(): r"""
|
||||
>>> from doctest import Tester
|
||||
>>> t = Tester(globs={'x': 42}, verbose=0)
|
||||
>>> t.runstring(r'''
|
||||
... >>> x = x * 2
|
||||
... >>> print(x)
|
||||
... 42
|
||||
... ''', 'XYZ')
|
||||
**********************************************************************
|
||||
Line 3, in XYZ
|
||||
Failed example:
|
||||
print(x)
|
||||
Expected:
|
||||
42
|
||||
Got:
|
||||
84
|
||||
TestResults(failed=1, attempted=2)
|
||||
>>> t.runstring(">>> x = x * 2\n>>> print(x)\n84\n", 'example2')
|
||||
TestResults(failed=0, attempted=2)
|
||||
>>> t.summarize()
|
||||
**********************************************************************
|
||||
1 items had failures:
|
||||
1 of 2 in XYZ
|
||||
***Test Failed*** 1 failures.
|
||||
TestResults(failed=1, attempted=4)
|
||||
>>> t.summarize(verbose=1)
|
||||
1 items passed all tests:
|
||||
2 tests in example2
|
||||
**********************************************************************
|
||||
1 items had failures:
|
||||
1 of 2 in XYZ
|
||||
4 tests in 2 items.
|
||||
3 passed and 1 failed.
|
||||
***Test Failed*** 1 failures.
|
||||
TestResults(failed=1, attempted=4)
|
||||
"""
|
||||
|
||||
def old_test2(): r"""
|
||||
>>> from doctest import Tester
|
||||
>>> t = Tester(globs={}, verbose=1)
|
||||
>>> test = r'''
|
||||
... # just an example
|
||||
... >>> x = 1 + 2
|
||||
... >>> x
|
||||
... 3
|
||||
... '''
|
||||
>>> t.runstring(test, "Example")
|
||||
Running string Example
|
||||
Trying:
|
||||
x = 1 + 2
|
||||
Expecting nothing
|
||||
ok
|
||||
Trying:
|
||||
x
|
||||
Expecting:
|
||||
3
|
||||
ok
|
||||
0 of 2 examples failed in string Example
|
||||
TestResults(failed=0, attempted=2)
|
||||
"""
|
||||
|
||||
def old_test3(): r"""
|
||||
>>> from doctest import Tester
|
||||
>>> t = Tester(globs={}, verbose=0)
|
||||
>>> def _f():
|
||||
... '''Trivial docstring example.
|
||||
... >>> assert 2 == 2
|
||||
... '''
|
||||
... return 32
|
||||
...
|
||||
>>> t.rundoc(_f) # expect 0 failures in 1 example
|
||||
TestResults(failed=0, attempted=1)
|
||||
"""
|
||||
|
||||
def old_test4(): """
|
||||
>>> import types
|
||||
>>> m1 = types.ModuleType('_m1')
|
||||
>>> m2 = types.ModuleType('_m2')
|
||||
>>> test_data = \"""
|
||||
... def _f():
|
||||
... '''>>> assert 1 == 1
|
||||
... '''
|
||||
... def g():
|
||||
... '''>>> assert 2 != 1
|
||||
... '''
|
||||
... class H:
|
||||
... '''>>> assert 2 > 1
|
||||
... '''
|
||||
... def bar(self):
|
||||
... '''>>> assert 1 < 2
|
||||
... '''
|
||||
... \"""
|
||||
>>> exec(test_data, m1.__dict__)
|
||||
>>> exec(test_data, m2.__dict__)
|
||||
>>> m1.__dict__.update({"f2": m2._f, "g2": m2.g, "h2": m2.H})
|
||||
|
||||
Tests that objects outside m1 are excluded:
|
||||
|
||||
>>> from doctest import Tester
|
||||
>>> t = Tester(globs={}, verbose=0)
|
||||
>>> t.rundict(m1.__dict__, "rundict_test", m1) # f2 and g2 and h2 skipped
|
||||
TestResults(failed=0, attempted=4)
|
||||
|
||||
Once more, not excluding stuff outside m1:
|
||||
|
||||
>>> t = Tester(globs={}, verbose=0)
|
||||
>>> t.rundict(m1.__dict__, "rundict_test_pvt") # None are skipped.
|
||||
TestResults(failed=0, attempted=8)
|
||||
|
||||
The exclusion of objects from outside the designated module is
|
||||
meant to be invoked automagically by testmod.
|
||||
|
||||
>>> doctest.testmod(m1, verbose=False)
|
||||
TestResults(failed=0, attempted=4)
|
||||
"""
|
||||
|
||||
######################################################################
|
||||
## Main
|
||||
######################################################################
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue