chore(deps): update dependency mock to v5
This MR contains the following updates:
Package | Update | Change |
---|---|---|
mock (source) | major |
==2.0.0 -> ==5.1.0
|
Release Notes
testing-cabal/mock
v5.1.0
-
bpo-44185: :func:
unittest.mock.mock_open
will call the :func:close
method of the file handle mock when it is exiting from the context manager. Patch by Samet Yaslan. -
gh-94924: :func:
unittest.mock.create_autospec
now properly returns coroutine functions compatible with :func:inspect.iscoroutinefunction
-
bpo-17013: Add
ThreadingMock
to :mod:unittest.mock
that can be used to create Mock objects that can wait until they are called. Patch by Karthikeyan Singaravelan and Mario Corchero. -
bpo-41768: :mod:
unittest.mock
speccing no longer calls class properties. Patch by Melanie Witt.
v5.0.2
-
gh-102978: Fixes :func:
unittest.mock.patch
not enforcing function signatures for methods decorated with@classmethod
or@staticmethod
when patch is called withautospec=True
. -
gh-103329: Regression tests for the behaviour of
unittest.mock.PropertyMock
were added.
v5.0.1
-
gh-100740: Fix
unittest.mock.Mock
not respecting the spec for attribute names prefixed withassert
. -
gh-100690:
Mock
objects which are not unsafe will now raise anAttributeError
when accessing an attribute that matches the name of an assertion but without the prefixassert_
, e.g. accessingcalled_once
instead ofassert_called_once
. This is in addition to this already happening for accessing attributes with prefixesassert
,assret
,asert
,aseert
, andassrt
. -
gh-96127:
inspect.signature
was raisingTypeError
on call with mock objects. Now it correctly returns(*args, **kwargs)
as infered signature.
v5.0.0
-
gh-98624: Add a mutex to unittest.mock.NonCallableMock to protect concurrent access to mock attributes.
-
bpo-43478: Mocks can no longer be used as the specs for other Mocks. As a result, an already-mocked object cannot have an attribute mocked using
autospec=True
or be the subject of acreate_autospec(...)
call. This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass. -
bpo-45156: Fixes infinite loop on :func:
unittest.mock.seal
of mocks created by :func:~unittest.create_autospec
. -
bpo-41403: Make :meth:
mock.patch
raise a :exc:TypeError
with a relevant error message on invalid arg. Previously it allowed a cryptic :exc:AttributeError
to escape. -
gh-91803: Fix an error when using a method of objects mocked with :func:
unittest.mock.create_autospec
after it was sealed with :func:unittest.mock.seal
function. -
bpo-41877: AttributeError for suspected misspellings of assertions on mocks are now pointing out that the cause are misspelled assertions and also what to do if the misspelling is actually an intended attribute name. The unittest.mock document is also updated to reflect the current set of recognised misspellings.
-
bpo-43478: Mocks can no longer be provided as the specs for other Mocks. As a result, an already-mocked object cannot be passed to
mock.Mock()
. This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass. -
bpo-45010: Remove support of special method
__div__
in :mod:unittest.mock
. It is not used in Python 3. -
gh-84753: :func:
inspect.iscoroutinefunction
now properly returnsTrue
when an instance of :class:unittest.mock.AsyncMock
is passed to it. This makes it consistent with behavior of :func:asyncio.iscoroutinefunction
. Patch by Mehdi ABAAKOUK. -
bpo-46852: Remove the undocumented private
float.__set_format__()
method, previously known asfloat.__setformat__()
in Python 3.7. Its docstring said: "You probably don't want to use this function. It exists mainly to be used in Python's test suite." Patch by Victor Stinner. -
gh-98086: Make sure
patch.dict()
can be applied on async functions. -
gh-100287: Fix the interaction of :func:
unittest.mock.seal
with :class:unittest.mock.AsyncMock
. -
gh-83076: Instantiation of
Mock()
andAsyncMock()
is now 3.8x faster. -
bpo-41877: A check is added against misspellings of autospect, auto_spec and set_spec being passed as arguments to patch, patch.object and create_autospec.
v4.0.3
-
bpo-42532: Remove unexpected call of
__bool__
when passing aspec_arg
argument to a Mock. -
bpo-39966: Revert bpo-25597. :class:
unittest.mock.MagicMock
with wraps' set uses default return values for magic methods. -
bpo-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.
-
bpo-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
- bpo-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.
v4.0.1
- Remove the universal marker from the wheel.
v4.0.0
- No Changes from 4.0.0b1.
v3.0.5
- bpo-31855: :func:
unittest.mock.mock_open
results now respects the argument of read([size]). Patch contributed by Rémi Lapeyre.
v3.0.4
- Include the license, readme and changelog in the source distribution.
v3.0.3
- Fixed patching of dictionaries, when specifying the target with a unicode on Python 2.
v3.0.2
- Add missing
funcsigs
dependency on Python 2.
v3.0.1
- Fix packaging issue where
six
was missed as a dependency.
v3.0.0
-
bpo-35226: Recursively check arguments when testing for equality of :class:
unittest.mock.call
objects and add note that tracking of parameters used to create ancestors of mocks inmock_calls
is not possible. -
bpo-31177: Fix bug that prevented using :meth:
reset_mock <unittest.mock.Mock.reset_mock>
on mock instances with deleted attributes -
bpo-26704: Added test demonstrating double-patching of an instance method. Patch by Anthony Sottile.
-
bpo-35500: Write expected and actual call parameters on separate lines in :meth:
unittest.mock.Mock.assert_called_with
assertion errors. Contributed by Susan Su. -
bpo-35330: When a :class:
Mock
instance was used to wrap an object, ifside_effect
is used in one of the mocks of it methods, don't call the original implementation and return the result of using the side effect the same way that it is done with return_value. -
bpo-30541: Add new function to seal a mock and prevent the automatically creation of child mocks. Patch by Mario Corchero.
-
bpo-35022: :class:
unittest.mock.MagicMock
now supports the__fspath__
method (from :class:os.PathLike
). -
bpo-33516: :class:
unittest.mock.MagicMock
now supports the__round__
magic method. -
bpo-35512: :func:
unittest.mock.patch.dict
used as a decorator with string target resolves the target during function call instead of during decorator construction. Patch by Karthikeyan Singaravelan. -
bpo-36366: Calling
stop()
on an unstarted or stopped :func:unittest.mock.patch
object will now returnNone
instead of raising :exc:RuntimeError
, making the method idempotent. Patch byKarthikeyan Singaravelan. -
bpo-35357: Internal attributes' names of unittest.mock._Call and unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with mock in order to prevent clashes with widely used object attributes. Fixed minor typo in test function name.
-
bpo-20239: Allow repeated assignment deletion of :class:
unittest.mock.Mock
attributes. Patch by Pablo Galindo. -
bpo-35082: Don't return deleted attributes when calling dir on a :class:
unittest.mock.Mock
. -
bpo-0: Improved an error message when mock assert_has_calls fails.
-
bpo-23078: Add support for :func:
classmethod
and :func:staticmethod
to :func:unittest.mock.create_autospec
. Initial patch by Felipe Ochoa. -
bpo-21478: Calls to a child function created with :func:
unittest.mock.create_autospec
should propagate to the parent. Patch by Karthikeyan Singaravelan. -
bpo-36598: Fix
isinstance
check for Mock objects with spec when the code is executed under tracing. Patch by Karthikeyan Singaravelan. -
bpo-32933: :func:
unittest.mock.mock_open
now supports iteration over the file contents. Patch by Tony Flury. -
bpo-21269: Add
args
andkwargs
properties to mock call objects. Contributed by Kumar Akshay. -
bpo-17185: Set
__signature__
on mock for :mod:inspect
to get signature. Patch by Karthikeyan Singaravelan. -
bpo-35047:
unittest.mock
now includes mock calls in exception messages ifassert_not_called
,assert_called_once
, orassert_called_once_with
fails. Patch by Petter Strandmark. -
bpo-28380: unittest.mock Mock autospec functions now properly support assert_called, assert_not_called, and assert_called_once.
-
bpo-28735: Fixed the comparison of mock.MagickMock with mock.ANY.
-
bpo-20804: The unittest.mock.sentinel attributes now preserve their identity when they are copied or pickled.
-
bpo-28961: Fix unittest.mock._Call helper: don't ignore the name parameter anymore. Patch written by Jiajun Huang.
-
bpo-26750: unittest.mock.create_autospec() now works properly for subclasses of property() and other data descriptors.
-
bpo-21271: New keyword only parameters in reset_mock call.
-
bpo-26807: mock_open 'files' no longer error on readline at end of file. Patch from Yolanda Robla.
-
bpo-25195: Fix a regression in mock.MagicMock. _Call is a subclass of tuple (changeset
3603bae
only works for classes) so we need to implement ne ourselves. Patch by Andrew Plummer.
Configuration
-
If you want to rebase/retry this MR, click this checkbox.
This MR has been generated by Renovate Bot.