Update dependency mock to v5 #204
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2.0.0->==5.2.0Release Notes
testing-cabal/mock (mock)
v5.2.0Compare Source
This is release is
in memory of Michael Foord__, who originally authored themockpackageand passed away in January 2025.
__ https://discuss.python.org/t/in-memoriam-michael-foord-1974-2025/78317
gh-65454: :func:
unittest.mock.Mock.attach_mockno longer triggers a callto a
PropertyMockbeing attached.gh-117765: Improved documentation for :func:
unittest.mock.patch.dictgh-124176: Add support for :func:
dataclasses.dataclassin:func:
unittest.mock.create_autospec. Nowcreate_autospecwill checkfor potential dataclasses and use :func:
dataclasses.fieldsfunction toretrieve the spec information.
gh-123934: Fix :class:
unittest.mock.MagicMockreseting magic methodsreturn values after
.reset_mock(return_value=True)was called.gh-90848: Fixed :func:
unittest.mock.create_autospecto configure parentmock with keyword arguments.
gh-113569: Indicate if there were no actual calls in unittest
:meth:
~unittest.mock.Mock.assert_has_callsfailure.gh-122858: Deprecate :func:
!asyncio.iscoroutinefunctionin favor of:func:
inspect.iscoroutinefunction.gh-104745: Limit starting a patcher (from :func:
unittest.mock.patchor:func:
unittest.mock.patch.object) more than once without stopping itgh-75988: Fixed :func:
unittest.mock.create_autospecto pass the callthrough to the wrapped object to return the real result.
gh-119600: Fix :func:
unittest.mock.patchto not read attributes of thetarget when
new_callableis set. Patch by Robert Collins.gh-113407: Fix import of :mod:
unittest.mockwhen CPython is builtwithout docstrings.
gh-120732: Fix
namepassing to :class:unittest.mock.Mockobject whenusing :func:
unittest.mock.create_autospec.v5.1.0Compare Source
bpo-44185: :func:
unittest.mock.mock_openwill call the :func:closemethod of the file handle mock when it is exiting from the context
manager. Patch by Samet Yaslan.
gh-94924: :func:
unittest.mock.create_autospecnow properly returnscoroutine functions compatible with :func:
inspect.iscoroutinefunctionbpo-17013: Add
ThreadingMockto :mod:unittest.mockthat can be usedto create Mock objects that can wait until they are called. Patch by
Karthikeyan Singaravelan and Mario Corchero.
bpo-41768: :mod:
unittest.mockspeccing no longer calls class properties.Patch by Melanie Witt.
v5.0.2Compare Source
gh-102978: Fixes :func:
unittest.mock.patchnot enforcing functionsignatures for methods decorated with
@classmethodor@staticmethodwhen patch is called withautospec=True.gh-103329: Regression tests for the behaviour of
unittest.mock.PropertyMockwere added.v5.0.1Compare Source
gh-100740: Fix
unittest.mock.Mocknot respecting the spec forattribute names prefixed with
assert.gh-100690:
Mockobjects which are not unsafe will now raise anAttributeErrorwhen accessing an attribute that matches the name of anassertion but without the prefix
assert_, e.g. accessingcalled_onceinstead ofassert_called_once. This is in addition tothis already happening for accessing attributes with prefixes
assert,assret,asert,aseert, andassrt.gh-96127:
inspect.signaturewas raisingTypeErroron call withmock objects. Now it correctly returns
(*args, **kwargs)as inferedsignature.
v5.0.0Compare Source
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=Trueor be the subject of acreate_autospec(...)call. Thiscan 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.sealof mockscreated by :func:
~unittest.create_autospec.bpo-41403: Make :meth:
mock.patchraise a :exc:TypeErrorwith arelevant error message on invalid arg. Previously it allowed a cryptic
:exc:
AttributeErrorto escape.gh-91803: Fix an error when using a method of objects mocked with
:func:
unittest.mock.create_autospecafter it was sealed with:func:
unittest.mock.sealfunction.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.iscoroutinefunctionnow properly returnsTruewhen an instance of :class:unittest.mock.AsyncMockis passed toit. 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 as
float.__setformat__()in Python 3.7. Itsdocstring 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.sealwith:class:
unittest.mock.AsyncMock.gh-83076: Instantiation of
Mock()andAsyncMock()is now 3.8xfaster.
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.3Compare Source
bpo-42532: Remove unexpected call of
__bool__when passing aspec_argargument to a Mock.bpo-39966: Revert bpo-25597. :class:
unittest.mock.MagicMockwithwraps' 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.2Compare Source
unittest.mock.AsyncMock.await_args_listhascall objects in the order of awaited arguments instead of using
:attr:
unittest.mock.Mock.call_argswhich has the last value of the call.Patch by Karthikeyan Singaravelan.
v4.0.1Compare Source
v4.0.0Compare Source
v3.0.5Compare Source
unittest.mock.mock_openresults now respects theargument of read([size]). Patch contributed by Rémi Lapeyre.
v3.0.4Compare Source
v3.0.3Compare Source
unicode on Python 2.
v3.0.2Compare Source
funcsigsdependency on Python 2.v3.0.1Compare Source
sixwas missed as a dependency.v3.0.0Compare Source
bpo-35226: Recursively check arguments when testing for equality of
:class:
unittest.mock.callobjects and add note that tracking ofparameters used to create ancestors of mocks in
mock_callsis notpossible.
bpo-31177: Fix bug that prevented using :meth:
reset_mock <unittest.mock.Mock.reset_mock>on mock instances with deleted attributesbpo-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_withassertion errors.Contributed by Susan Su.
bpo-35330: When a :class:
Mockinstance was used to wrap an object, ifside_effectis used in one of the mocks of it methods, don't call theoriginal 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.MagicMocknow supports the__fspath__method (from :class:os.PathLike).bpo-33516: :class:
unittest.mock.MagicMocknow supports the__round__magic method.bpo-35512: :func:
unittest.mock.patch.dictused as a decorator withstring 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.patchobject will now returnNoneinstead ofraising :exc:
RuntimeError, making the method idempotent. PatchbyKarthikeyan 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.Mockattributes. 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:
classmethodand :func:staticmethodto :func:
unittest.mock.create_autospec. Initial patch by Felipe Ochoa.bpo-21478: Calls to a child function created with
:func:
unittest.mock.create_autospecshould propagate to the parent.Patch by Karthikeyan Singaravelan.
bpo-36598: Fix
isinstancecheck for Mock objects with spec when thecode is executed under tracing. Patch by Karthikeyan Singaravelan.
bpo-32933: :func:
unittest.mock.mock_opennow supports iteration overthe file contents. Patch by Tony Flury.
bpo-21269: Add
argsandkwargsproperties to mock call objects.Contributed by Kumar Akshay.
bpo-17185: Set
__signature__on mock for :mod:inspectto getsignature. Patch by Karthikeyan Singaravelan.
bpo-35047:
unittest.mocknow includes mock calls in exceptionmessages if
assert_not_called,assert_called_once, orassert_called_once_withfails. 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
3603baeonly works for classes) so we need toimplement ne ourselves. Patch by Andrew Plummer.
Configuration
📅 Schedule: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.