Naitree Zhu
d5fd75c53f
bpo-34596: Fallback to a default reason when @unittest.skip is uncalled ( #9082 )
...
* bpo-34596: Fallback to a default reason when @unittest.skip is uncalled
* Change default reason to empty string
* Fix rst formatting of NEWS entry
2019-09-09 16:06:48 +02:00
Serhiy Storchaka
142566c028
[3.9] bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-12620)
...
Turn deprecation warnings added in 3.8 into TypeError.
2019-06-05 18:22:31 +03:00
Serhiy Storchaka
2085bd0877
bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700)
2019-06-01 11:00:15 +03:00
Andrew Svetlov
4dd3e3f9bb
bpo-32972: Async test case (GH-13386)
...
Add explicit `asyncSetUp` and `asyncTearDown` methods.
The rest is the same as for #13228
`AsyncTestCase` create a loop instance for every test for the sake of test isolation.
Sometimes a loop shared between all tests can speed up tests execution time a lot but it requires control of closed resources after every test finish. Basically, it requires nested supervisors support that was discussed with @1st1 many times. Sorry, asyncio supervisors have no chance to land on Python 3.8.
The PR intentionally does not provide API for changing the used event loop or getting the test loop: use `asyncio.set_event_loop_policy()` and `asyncio.get_event_loop()` instead.
The PR adds four overridable methods to base `unittest.TestCase` class:
```
def _callSetUp(self):
self.setUp()
def _callTestMethod(self, method):
method()
def _callTearDown(self):
self.tearDown()
def _callCleanup(self, function, /, *args, **kwargs):
function(*args, **kwargs)
```
It allows using asyncio facilities with minimal influence on the unittest code.
The last but not least: the PR respects contextvars. The context variable installed by `asyncSetUp` is available on test, `tearDown` and a coroutine scheduled by `addCleanup`.
https://bugs.python.org/issue32972
2019-05-29 02:33:59 -07:00
Serhiy Storchaka
d53cf99dca
bpo-36542: Allow to overwrite the signature for Python functions. (GH-12705)
2019-05-06 22:40:27 +03:00
jkleint
39baace622
Document that TestCase.assertCountEqual() can take iterables (GH-686)
2019-04-23 01:34:29 -07:00
Serhiy Storchaka
42a139ed88
bpo-36492: Deprecate passing some arguments as keyword arguments. (GH-12637)
...
Deprecated passing the following arguments as keyword arguments:
- "func" in functools.partialmethod(), weakref.finalize(),
profile.Profile.runcall(), cProfile.Profile.runcall(),
bdb.Bdb.runcall(), trace.Trace.runfunc() and
curses.wrapper().
- "function" in unittest.addModuleCleanup() and
unittest.TestCase.addCleanup().
- "fn" in the submit() method of concurrent.futures.ThreadPoolExecutor
and concurrent.futures.ProcessPoolExecutor.
- "callback" in contextlib.ExitStack.callback(),
contextlib.AsyncExitStack.callback() and
contextlib.AsyncExitStack.push_async_callback().
- "c" and "typeid" in the create() method of multiprocessing.managers.Server
and multiprocessing.managers.SharedMemoryServer.
- "obj" in weakref.finalize().
Also allowed to pass arbitrary keyword arguments (even "self" and "func")
if the above arguments are passed as positional argument.
2019-04-01 09:16:35 +03:00
Lisa Roach
0f221d09ca
bpo-24412: Adds cleanUps for setUpClass and setUpModule. (GH-9190)
2018-11-08 18:34:33 -08:00
Bruno Oliveira
da2bf9f66d
bpo-34900: Make TestCase.debug() work with subtests (GH-9707)
2018-10-12 13:35:55 +03:00
Serhiy Storchaka
77d5781835
bpo-34318: Convert deprecation warnings to errors in assertRaises() etc. (GH-8623)
2018-08-19 10:00:11 +03:00
Ron
032a6480e3
Update TestCase.assertAlmostEqual and assertNotAlmostEqual docstrings. (GH-3998)
...
The word "difference" from missing the sentence.
This clarifies that it compares the difference between the two objects.
2017-10-18 10:01:23 -07:00
Serhiy Storchaka
0b5e61ddca
bpo-30397: Add re.Pattern and re.Match. ( #1646 )
2017-10-04 20:09:49 +03:00
Serhiy Storchaka
48fbe52ac7
bpo-30664: The description of a unittest subtest now preserves the ( #2265 )
...
order of keyword arguments of TestCase.subTest().
2017-06-23 21:47:39 +03:00
Giampaolo Rodola
5d7a8d0c13
bpo-30190: improved error msg for assertAlmostEqual(delta=...) ( #1331 )
...
* #30190 / unittest / assertAlmostEqual(delta=...) / error msg: show the difference between the 2 numbers in case of failure
* safe_repr() diff
* also show difference when passing 'places' argument
* refactoring
* update Misc/NEWS
2017-05-01 18:18:56 +02:00
Victor Stinner
bbd3cf8f1e
Fix ref cycles in TestCase.assertRaises() ( #193 )
...
bpo-23890: unittest.TestCase.assertRaises() now manually breaks a
reference cycle to not keep objects alive longer than expected.
2017-03-28 00:56:28 +02:00
Berker Peksag
16ea19fc66
Issue #25651 : Allow falsy values to be used for msg parameter of subTest()
2016-09-21 19:34:15 +03:00
Martin Panter
eb9957065a
Issue #27626 : Spelling fixes in docs, comments and internal names
...
Based on patch by Ville Skyttä.
2016-07-28 01:11:04 +00:00
Serhiy Storchaka
685fbed7f9
Issue #26837 : assertSequenceEqual() now correctly outputs non-stringified
...
differing items (like bytes in the -b mode). This affects assertListEqual()
and assertTupleEqual().
2016-04-25 08:58:25 +03:00
Robert Collins
079fc7faff
Issue #21112 : Fix regression in unittest.expectedFailure on subclasses.
...
Patch from Berker Peksag.
2015-08-28 10:35:14 +12:00
Robert Collins
ed599b7c84
Issue #21112 : Fix regression in unittest.expectedFailure on subclasses.
...
Patch from Berker Peksag.
2015-08-28 10:34:51 +12:00
Robert Collins
be6caca534
Issue #20362 : Honour TestCase.longMessage correctly in assertRegex.
...
Patch from Ilia Kurenkov.
2015-08-20 11:13:09 +12:00
Serhiy Storchaka
041dd8eef1
Issue #15836 : assertRaises(), assertRaisesRegex(), assertWarns() and
...
assertWarnsRegex() assertments now check the type of the first argument
to prevent possible user error. Based on patch by Daniel Wagner-Hall.
2015-05-21 20:15:40 +03:00
Serhiy Storchaka
df573d6ad8
Issue #24134 : assertRaises(), assertRaisesRegex(), assertWarns() and
...
assertWarnsRegex() checks now emits a deprecation warning when callable is
None or keyword arguments except msg is passed in the context manager mode.
2015-05-16 16:29:50 +03:00
Serhiy Storchaka
4b5367c46d
Fixed English in error message.
2015-05-06 19:21:00 +03:00
Serhiy Storchaka
e130503c7b
Issue #24134 : assertRaises(), assertRaisesRegex(), assertWarns() and
...
assertWarnsRegex() checks are not longer successful if the callable is None.
Added tests for assertRaises().
2015-05-06 19:13:11 +03:00
Serhiy Storchaka
a7d00c207f
Reverted issue #24134 changes (except new tests).
2015-05-16 16:25:43 +03:00
Serhiy Storchaka
f4b7a02e93
Issue #21408 : The default __ne__() now returns NotImplemented if __eq__()
...
returned NotImplemented. Removed incorrect implementations of __ne__().
2015-01-26 09:57:07 +02:00
Antoine Pitrou
9681022f1e
Issue #9815 : assertRaises now tries to clear references to local variables in the exception's traceback.
2014-04-29 01:23:50 +02:00
R David Murray
ef1c26798c
backport: #20145 : assert[Raises|Warns]Regex now raise TypeError on bad regex.
...
Previously a non-string, non-regex second argument and missing callable
argument could cause the test to appear to always pass.
Initial patch by Kamilla Holanda.
2014-03-25 15:31:50 -04:00
Victor Stinner
031bd532c4
Close #19880 : Fix a reference leak in unittest.TestCase. Explicitly break
...
reference cycles between frames and the _Outcome instance.
2013-12-09 01:52:50 +01:00
Serhiy Storchaka
77622f55c2
Issue #18996 : TestCase.assertEqual() now more cleverly shorten differing
...
strings in error report.
2013-09-23 23:07:00 +03:00
Antoine Pitrou
0715b9fad3
Issue #18937 : Add an assertLogs() context manager to unittest.TestCase to ensure that a block of code emits a message using the logging module.
2013-09-14 19:45:47 +02:00
Ezio Melotti
85a25222bc
#8906 : merge with 3.3.
2013-03-29 03:43:38 +02:00
Ezio Melotti
31797e5efe
#8906 : document failureException, longMessage, and maxDiff in the class docstring. Patch by Boris Feld.
2013-03-29 03:42:29 +02:00
Ezio Melotti
67ddccafc3
#17329 : merge with 3.3.
2013-03-27 20:13:59 +02:00
Ezio Melotti
184e59357e
#17329 : merge with 3.2.
2013-03-27 20:12:55 +02:00
Ezio Melotti
265281ac02
#17329 : document unittest.SkipTest. Initial patch by Zachary Ware.
2013-03-27 20:11:55 +02:00
Antoine Pitrou
c9b3ef2df0
Issue #16997 : unittest.TestCase now provides a subTest() context manager to procedurally generate, in an easy way, small test instances.
2013-03-20 20:16:47 +01:00
Andrew Svetlov
5b89840d9c
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:26:36 +02:00
Andrew Svetlov
737fb89dd1
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:14:22 +02:00
Ezio Melotti
9cfa1ff891
#16433 : merge with 3.2.
2012-11-08 11:09:13 +02:00
Ezio Melotti
90eea97a33
#16433 : fix docstring of assertNotEqual.
2012-11-08 11:08:39 +02:00
Benjamin Peterson
b29614e047
compare singletons by identity not equality ( closes #16712 )
...
Patch from Serhiy Storchaka.
2012-10-09 11:16:03 -04:00
Antoine Pitrou
f99983dacb
Issue #14664 : It is now possible to use @unittest.skip{If,Unless} on a test class that doesn't inherit from TestCase (i.e. a mixin).
2012-04-25 14:58:17 +02:00
Antoine Pitrou
b05ac864f0
Issue #14664 : It is now possible to use @unittest.skip{If,Unless} on a test class that doesn't inherit from TestCase (i.e. a mixin).
2012-04-25 14:56:46 +02:00
Florent Xicluna
c53ae58954
Drop unused import in unittest package.
2011-11-04 08:25:54 +01:00
Ezio Melotti
d8b509b192
#13012 : use splitlines(keepends=True/False) instead of splitlines(0/1).
2011-09-28 17:37:55 +03:00
Benjamin Peterson
0850638957
merge 3.2 ( #12544 )
2011-07-12 19:23:43 -05:00
Benjamin Peterson
34b2b263db
this can be done without a custom dict (also fixes #12544 )
2011-07-12 19:21:42 -05:00
Ezio Melotti
b4dc2502ad
Issue #10775 : assertRaises, assertRaisesRegex, assertWarns, and assertWarnsRegex now accept a keyword argument 'msg' when used as context managers. Initial patch by Winston Ewert.
2011-05-06 15:01:41 +03:00