summaryrefslogtreecommitdiffstats
path: root/Lib/unittest
Commit message (Collapse)AuthorAgeFilesLines
* gh-127221: Add colour to unittest output (#127223)Hugo van Kemenade2024-12-052-41/+71
| | | Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
* gh-104745: Limit starting a patcher more than once without stopping it (#126649)Red4Ru2024-11-131-0/+9
| | | | | | | | Previously, this would cause an `AttributeError` if the patch stopped more than once after this, and would also disrupt the original patched object. --------- Co-authored-by: Peter Bierma <zintensitydev@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* bpo-46128: Strip IsolatedAsyncioTestCase frames from reported stacktraces ↵Andrew Svetlov2024-11-131-0/+1
| | | | | | | | | | | | | | | (#30196) * Strip IsolatedAsyncioTestCase frames from reported stacktraces * Update Misc/NEWS.d/next/Library/2021-12-19-10-47-24.bpo-46128.Qv3EK1.rst Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> --------- Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com> Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-126133: Only use start year in PSF copyright, remove end years (#126236)Hugo van Kemenade2024-11-121-1/+1
|
* gh-80958: unittest: discovery support for namespace packages as start ↵Jacob Walls2024-10-231-14/+45
| | | | directory (#123820)
* gh-124176: Add special support for dataclasses to `create_autospec` (#124429)sobolevn2024-09-271-6/+16
|
* gh-124234: Improve docs for `Mock.reset_mock` (#124237)sobolevn2024-09-261-2/+4
|
* gh-123934: Fix `MagicMock` not to reset magic method return values (#124038)sobolevn2024-09-191-1/+12
|
* Remove unused variable in `MagicMixin._mock_set_magics` (#124092)sobolevn2024-09-141-2/+0
|
* gh-122858: Deprecate `asyncio.iscoroutinefunction` (#122875)Wulian2024-08-111-2/+2
| | | | | Deprecate `asyncio.iscoroutinefunction` in favor of `inspect.iscoroutinefunction`. Co-authored-by: Kumar Aditya <kumaraditya@python.org>
* gh-117765: Improve documentation for `mocker.patch.dict` (#121755)Dominic H2024-07-151-1/+2
|
* gh-120732: Fix `name` passing to `Mock`, when using kwargs to ↵Nikita Sobolev2024-06-191-7/+6
| | | | `create_autospec` (#120737)
* gh-120417: Add #noqa to used imports in the stdlib (#120421)Victor Stinner2024-06-131-2/+2
| | | | | Tools such as ruff can ignore "imported but unused" warnings if a line ends with "# noqa: F401". It avoids the temptation to remove an import which is used effectively.
* gh-120388: Improve deprecation warning message, when test returns non-None ↵Nikita Sobolev2024-06-122-6/+19
| | | | | | (#120401) Co-authored-by: Alex Waygood <alex.waygood@gmail.com> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* gh-65454: avoid triggering call to a PropertyMock in ↵blhsing2024-06-111-0/+3
| | | | NonCallableMock.__setattr__ (#120019)
* gh-119600: mock: do not access attributes of original when new_callable is ↵Robert Collins2024-06-111-5/+9
| | | | | | | | | | set (#119601) In order to patch flask.g e.g. as in #84982, that proxies getattr must not be invoked. For that, mock must not try to read from the original object. In some cases that is unavoidable, e.g. when doing autospec. However, patch("flask.g", new_callable=MagicMock) should be entirely safe.
* Remove almost all unpaired backticks in docstrings (#119231)Geoffrey Thomas2024-05-221-1/+1
| | | | | | | | | | | | | | | | | | As reported in #117847 and #115366, an unpaired backtick in a docstring tends to confuse e.g. Sphinx running on subclasses of standard library objects, and the typographic style of using a backtick as an opening quote is no longer in favor. Convert almost all uses of the form The variable `foo' should do xyz to The variable 'foo' should do xyz and also fix up miscellaneous other unpaired backticks (extraneous / missing characters). No functional change is intended here other than in human-readable docstrings.
* gh-90848: Fixed create_autospec ignoring configure_mock style kwargs (#118163)infohash2024-05-021-8/+12
|
* gh-59215: unittest: restore _top_level_dir at end of discovery (GH-15242)Zackery Spytz2024-04-031-0/+2
|
* GH-70647: Deprecate strptime day of month parsing without a year present to ↵Gregory P. Smith2024-04-031-0/+22
| | | | avoid leap-year bugs (GH-117107)
* gh-75988: Fix issues with autospec ignoring wrapped object (#115223)infohash2024-03-081-2/+11
| | | | | | | | | | | * set default return value of functional types as _mock_return_value * added test of wrapping child attributes * added backward compatibility with explicit return * added docs on the order of precedence * added test to check default return_value
* gh-113267: Revert "gh-106584: Fix exit code for unittest in Python 3.12 ↵Serhiy Storchaka2024-02-042-9/+5
| | | | | | (#106588)" (GH-114470) This reverts commit 8fc071345b50dd3de61ebeeaa287ccef21d061b2.
* GH-113661: unittest runner: Don't exit 5 if tests were skipped (#113856)Stefano Rivera2024-01-092-2/+2
| | | | | The intention of exiting 5 was to detect issues where the test suite wasn't discovered at all. If we skipped tests, it was correctly discovered.
* gh-113569: Display calls in Mock.assert_has_calls failure when empty (GH-113573)wookie1842024-01-041-4/+4
|
* gh-113407: Fix import of unittest.mock when CPython is built without ↵Serhiy Storchaka2023-12-241-5/+11
| | | | docstrings (GH-113408)
* gh-110774: allow setting the Runner(loop_factory=...) from ↵Thomas Grainger2023-10-311-2/+5
| | | | | | | IsolatedAsyncioTestCase (#110776) Co-authored-by: Łukasz Langa <lukasz@langa.pl> Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
* gh-111019: Align expected and actual titles in test output (#111020)James2023-10-181-3/+3
| | | | Align expected and actual titles in output from assert_has_calls/assert_called_with for greater readability
* gh-106584: Fix exit code for unittest in Python 3.12 (#106588)EliseevEgor2023-09-222-5/+9
| | | | | Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com> Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
* gh-84867: Do not load tests from TestCase and FunctionTestCase (GH-100497)Nikita Sobolev2023-09-121-5/+17
|
* gh-104090: Fix unittest collectedDurations resources leak (#106795)Yonatan Bitton2023-07-191-1/+2
|
* Remove unused branches from mock module (#106617)Chris Withers2023-07-111-6/+1
| | | | | | | * lambda has a name of __none__, but no async lambda so this branch is not needed * _get_signature_object only returns None for bound builtins. There are no async builtins so this branch isn't needed * Exclude a couple of methods from coverage checking in the downstream rolling backport of mock
* GH-61215: threadingmock: Remove unused branch for `timeout` (#106591)Mario Corchero2023-07-101-3/+1
| | | | | | threadingmock: Remove unused branch for `timeout` This is no longer needed as the mock does not hold a "timeout" parameter, the timeout is stored in `_mock_wait_timeout`.
* gh-61215: Rename `wait_until_any_call` to `wait_until_any_call_with` (#106414)Mario Corchero2023-07-041-1/+1
| | | | | | mock: Rename `wait_until_any_call` to `wait_until_any_call_with` Rename the method to be more explicit that it expects the args and kwargs to wait for.
* gh-61215: New mock to wait for multi-threaded events to happen (#16094)Mario Corchero2023-07-031-0/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mock: Add `ThreadingMock` class Add a new class that allows to wait for a call to happen by using `Event` objects. This mock class can be used to test and validate expectations of multithreading code. It uses two attributes for events to distinguish calls with any argument and calls with specific arguments. The calls with specific arguments need a lock to prevent two calls in parallel from creating the same event twice. The timeout is configured at class and constructor level to allow users to set a timeout, we considered passing it as an argument to the function but it could collide with a function parameter. Alternatively we also considered passing it as positional only but from an API caller perspective it was unclear what the first number meant on the function call, think `mock.wait_until_called(1, "arg1", "arg2")`, where 1 is the timeout. Lastly we also considered adding the new attributes to magic mock directly rather than having a custom mock class for multi threading scenarios, but we preferred to have specialised class that can be composed if necessary. Additionally, having added it to `MagicMock` directly would have resulted in `AsyncMock` having this logic, which would not work as expected, since when if user "waits" on a coroutine does not have the same meaning as waiting on a standard call. Co-authored-by: Karthikeyan Singaravelan <tir.karthi@gmail.com>
* bpo-44185: Added close() to mock_open __exit__ (#26902)Samet YASLAN2023-06-111-0/+4
|
* gh-94924: support `inspect.iscoroutinefunction` in ↵Thomas Grainger2023-06-091-2/+30
| | | | | | | | | | `create_autospec(async_def)` (#94962) * support inspect.iscoroutinefunction in create_autospec(async_def) * test create_autospec with inspect.iscoroutine and inspect.iscoroutinefunction * test when create_autospec functions check their signature
* gh-105407: Remove unused imports in the stdlib (#105411)Victor Stinner2023-06-061-1/+0
|
* gh-104992: Remove deprecated unittest.TestProgram.usageExit (#104993)Hugo van Kemenade2023-05-271-10/+0
|
* gh-104835: Remove unittest's deprecated getTestCaseNames, makeSuite, ↵Hugo van Kemenade2023-05-242-49/+0
| | | | findTestCases (#104836)
* gh-85934: Use getattr_static when adding mock spec (#22209)melanie witt2023-05-231-1/+7
| | | | Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
* gh-68968: Correcting message display issue with assertEqual (#103937)Michael Blahay2023-05-041-8/+23
|
* gh-62432: unittest runner: Exit code 5 if no tests were run (#102051)Stefano Rivera2023-04-272-1/+10
| | | | | | | | As discussed in https://discuss.python.org/t/unittest-fail-if-zero-tests-were-discovered/21498/7 It is common for test runner misconfiguration to fail to find any tests, This should be an error. Fixes: #62432
* gh-48330: address review comments to PR-12271 (#103209)Giampaolo Rodola2023-04-161-1/+5
| | | | | address review comments to PR-12271 Signed-off-by: Giampaolo Rodola <g.rodola@gmail.com>
* gh-102978: Fix mock.patch function signatures for class and staticmethod ↵Tomas R2023-04-131-0/+6
| | | | | | | decorators (#103228) Fixes unittest.mock.patch not enforcing function signatures for methods decorated with @classmethod or @staticmethod when patch is called with autospec=True.
* bpo-4080: unittest durations (#12271)Giampaolo Rodola2023-04-024-6/+67
|
* Remove unused import of `warnings` from `unittest.loader` (#102479)JosephSBoyle2023-03-061-1/+0
|
* gh-96127: Fix `inspect.signature` call on mocks (#96335)Nikita Sobolev2023-01-071-1/+9
|
* gh-100690: [mock] hide `ATTRIB_DENY_LIST` and make it immutable (#100819)Nikita Sobolev2023-01-071-2/+6
|
* gh-100690: Raise an AttributeError when the assert_ prefix is forgotten when ↵Christian Klein2023-01-061-4/+10
| | | | | | | | using Mock (#100691) Mock objects which are not unsafe will now raise an AttributeError when accessing an attribute that matches the name of an assertion but without the prefix `assert_`, e.g. accessing `called_once` instead of `assert_called_once`. This is in addition to this already happening for accessing attributes with prefixes assert, assret, asert, aseert, and assrt.
* gh-100739: Respect mock spec when checking for unsafe prefixes (#100740)Christian Klein2023-01-041-1/+1
| | | Co-authored-by: Nikita Sobolev <mail@sobolevn.me>