dgb-sistemas / biblat-manager

GNU General Public License v3.0
1 stars 9 forks source link

Update mock to 5.0.0 #220

Closed pyup-bot closed 1 year ago

pyup-bot commented 1 year ago

This PR updates mock from 3.0.5 to 5.0.0.

Changelog ### 5.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 a `create_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 returns ``True`` 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 as ``float.__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()`` and ``AsyncMock()`` 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. ``` ### 4.0.3 ``` ----- - bpo-42532: Remove unexpected call of ``__bool__`` when passing a ``spec_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. ``` ### 4.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. ``` ### 4.0.1 ``` ----- - Remove the universal marker from the wheel. ``` ### 4.0.0 ``` ----- - No Changes from 4.0.0b1. ``` ### 4.0.0b1 ``` ------- - 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 - bpo-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 a `TypeError`: call().foo().__getitem__('bar') Patch by blhsing - bpo-38839: Fix some unused functions in tests. Patch by Adam Johnson. - bpo-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. - bpo-39082: Allow AsyncMock to correctly patch static/class methods - bpo-38093: Fixes AsyncMock so it doesn't crash when used with AsyncContextManagers or AsyncIterators. - bpo-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. - bpo-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). - bpo-38473: Use signature from inner mock for autospecced methods attached with :func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan. - bpo-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. - bpo-37555: Fix `NonCallableMock._call_matcher` returning tuple instead of `_Call` object when `self._spec_signature` exists. Patch by Elizabeth Uselton - bpo-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. - bpo-38669: Raise :exc:`TypeError` when passing target as a string with :meth:`unittest.mock.patch.object`. - bpo-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. - bpo-38108: Any synchronous magic methods on an AsyncMock now return a MagicMock. Any asynchronous magic methods on a MagicMock now return an AsyncMock. - bpo-21478: Record calls to parent when autospecced object is attached to a mock using :func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan. - bpo-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. - bpo-38932: Mock fully resets child objects on reset_mock(). Patch by Vegard Stikbakke - bpo-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 return ``True``). - bpo-37212: :func:`unittest.mock.call` now preserves the order of keyword arguments in repr output. Patch by Karthikeyan Singaravelan. - bpo-37828: Fix default mock name in :meth:`unittest.mock.Mock.assert_called` exceptions. Patch by Abraham Toriz Cruz. - bpo-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. - bpo-21600: Fix :func:`mock.patch.stopall` to stop active patches that were created with :func:`mock.patch.dict`. - bpo-38161: Removes _AwaitEvent from AsyncMock. - bpo-36871: Ensure method signature is used instead of constructor signature of a class while asserting mock object against method calls. Patch by Karthikeyan Singaravelan. ```
Links - PyPI: https://pypi.org/project/mock - Changelog: https://pyup.io/changelogs/mock/ - Docs: http://mock.readthedocs.org/en/latest/
pyup-bot commented 1 year ago

Closing this in favor of #237