Changelog History
Page 1
-
v4.0.3 Changes
Issue #42532: Remove unexpected call of
__bool__
when passing aspec_arg
argument to a Mock.โช Issue #39966: Revert bpo-25597. :class:
unittest.mock.MagicMock
with wraps' set uses default return values for magic methods.๐คก Issue #41877: Mock objects which are not unsafe will now raise an AttributeError if an attribute with the prefix asert, aseert, or assrt is accessed, in addition to this already happening for the prefixes assert or assret.
โช Issue #40126: Fixed reverting multiple patches in unittest.mock. Patcher's
__exit__()
is now never called if its__enter__()
is failed. Returning true from__exit__()
silences now the exception.
-
v4.0.2 Changes
March 11, 2020- Issue #39915: Ensure :attr:
unittest.mock.AsyncMock.await_args_list
has call objects in the order of awaited arguments instead of using :attr:unittest.mock.Mock.call_args
which has the last value of the call. Patch by Karthikeyan Singaravelan.
- Issue #39915: Ensure :attr:
-
v4.0.1 Changes
February 06, 2020- โ Remove the universal marker from the wheel.
-
v4.0.0 Changes
February 05, 2020- No Changes from 4.0.0b1.
-
v4.0.0.b1 Changes
January 29, 2020- ๐ The release is a fresh cut of cpython's
4a686504
__. All changes to :mod:mock
from that commit and before are included in this release along with the subsequent changes listed below.
__ https://github.com/python/cpython/commit/4a686504eb2bbf69adf78077458508a7ba131667
- โ
Issue #37972: Subscripts to the
unittest.mock.call
objects now receive the same chaining mechanism as any other custom attributes, so that the following usage no longer raises aTypeError
:
call().foo().getitem('bar')
Patch by blhsing
โ Issue #38839: Fix some unused functions in tests. Patch by Adam Johnson.
โ Issue #39485: Fix a bug in :func:
unittest.mock.create_autospec
that would complain about the wrong number of arguments for custom descriptors defined in an extension module returning functions.Issue #39082: Allow AsyncMock to correctly patch static/class methods
๐ Issue #38093: Fixes AsyncMock so it doesn't crash when used with AsyncContextManagers or AsyncIterators.
Issue #38859: AsyncMock now returns StopAsyncIteration on the exaustion of a side_effects iterable. Since PEP-479 its Impossible to raise a StopIteration exception from a coroutine.
๐ Issue #38163: Child mocks will now detect their type as either synchronous or asynchronous, asynchronous child mocks will be AsyncMocks and synchronous child mocks will be either MagicMock or Mock (depending on their parent type).
๐คก Issue #38473: Use signature from inner mock for autospecced methods attached with :func:
unittest.mock.attach_mock
. Patch by Karthikeyan Singaravelan.Issue #38136: Changes AsyncMock call count and await count to be two different counters. Now await count only counts when a coroutine has been awaited, not when it has been called, and vice-versa. Update the documentation around this.
Issue #37555: Fix
NonCallableMock._call_matcher
returning tuple instead of_Call
object whenself._spec_signature
exists. Patch by Elizabeth UseltonIssue #37251: Remove
__code__
check in AsyncMock that incorrectly evaluated function specs as async objects but failed to evaluate classes with__await__
but no__code__
attribute defined as async objects.Issue #38669: Raise :exc:
TypeError
when passing target as a string with :meth:unittest.mock.patch.object
.Issue #25597: Ensure, if
wraps
is supplied to :class:unittest.mock.MagicMock
, it is used to calculate return values for the magic methods instead of using the default return values. Patch by Karthikeyan Singaravelan.๐ Issue #38108: Any synchronous magic methods on an AsyncMock now return a MagicMock. Any asynchronous magic methods on a MagicMock now return an AsyncMock.
Issue #21478: Record calls to parent when autospecced object is attached to a mock using :func:
unittest.mock.attach_mock
. Patch by Karthikeyan Singaravelan.Issue #38857: AsyncMock fix for return values that are awaitable types. This also covers side_effect iterable values that happend to be awaitable, and wraps callables that return an awaitable type. Before these awaitables were being awaited instead of being returned as is.
๐คก Issue #38932: Mock fully resets child objects on reset_mock(). Patch by Vegard Stikbakke
Issue #37685: Fixed
__eq__
,__lt__
etc implementations in some classes. They now return :data:NotImplemented
for unsupported type of the other operand. This allows the other operand to play role (for example the equality comparison with :data:~unittest.mock.ANY
will returnTrue
).โ Issue #37212: :func:
unittest.mock.call
now preserves the order of keyword arguments in repr output. Patch by Karthikeyan Singaravelan.๐คก Issue #37828: Fix default mock name in :meth:
unittest.mock.Mock.assert_called
exceptions. Patch by Abraham Toriz Cruz.Issue #36871: Improve error handling for the assert_has_calls and assert_has_awaits methods of mocks. Fixed a bug where any errors encountered while binding the expected calls to the mock's spec were silently swallowed, leading to misleading error output.
๐คก Issue #21600: Fix :func:
mock.patch.stopall
to stop active patches that were created with :func:mock.patch.dict
.๐ Issue #38161: Removes _AwaitEvent from AsyncMock.
Issue #36871: Ensure method signature is used instead of constructor signature of a class while asserting mock object against method calls. Patch by Karthikeyan Singaravelan.
- ๐ The release is a fresh cut of cpython's
-
v3.0.5 Changes
May 07, 2019- โ
Issue #31855: :func:
unittest.mock.mock_open
results now respects the argument of read([size]). Patch contributed by Rรฉmi Lapeyre.
- โ
Issue #31855: :func:
-
v3.0.4 Changes
May 04, 2019- Include the license, readme and changelog in the source distribution.
-
v3.0.3 Changes
May 02, 2019- ๐ Fixed patching of dictionaries, when specifying the target with a unicode on Python 2.
-
v3.0.2 Changes
May 02, 2019- โ Add missing
funcsigs
dependency on Python 2.
- โ Add missing
-
v3.0.1 Changes
May 02, 2019- ๐ Fix packaging issue where
six
was missed as a dependency.
- ๐ Fix packaging issue where