diff options
author | Chris Withers <chris@withers.org> | 2020-01-29 19:29:46 +0000 |
---|---|---|
committer | Chris Withers <chris@withers.org> | 2020-01-29 19:46:36 +0000 |
commit | ba8cbf9dff0f44b9d4f281487c046de09095dbbb (patch) | |
tree | c2829e7163c79719a41f9ca149f430bdc789b3a3 | |
parent | 9004d447d9c8dcf3d4e039628d31c3e01c74f0f5 (diff) | |
download | platform_external_python_mock-ba8cbf9dff0f44b9d4f281487c046de09095dbbb.tar.gz platform_external_python_mock-ba8cbf9dff0f44b9d4f281487c046de09095dbbb.tar.bz2 platform_external_python_mock-ba8cbf9dff0f44b9d4f281487c046de09095dbbb.zip |
Preparing for 4.1.0 release.
25 files changed, 105 insertions, 59 deletions
diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 919648b..7f14e60 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,3 +1,108 @@ +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 + +- 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 a `TypeError`: + + 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 when `self._spec_signature` exists. Patch by Elizabeth + Uselton + +- Issue #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 return + ``True``). + +- 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. + 3.0.5 ----- diff --git a/NEWS.d/2019-05-12-12-58-37.bpo-36871.6xiEHZ.rst b/NEWS.d/2019-05-12-12-58-37.bpo-36871.6xiEHZ.rst deleted file mode 100644 index 218795f..0000000 --- a/NEWS.d/2019-05-12-12-58-37.bpo-36871.6xiEHZ.rst +++ /dev/null @@ -1,3 +0,0 @@ -Ensure method signature is used instead of constructor signature of a class -while asserting mock object against method calls. Patch by Karthikeyan -Singaravelan. diff --git a/NEWS.d/2019-06-22-22-00-35.bpo-37212.Zhv-tq.rst b/NEWS.d/2019-06-22-22-00-35.bpo-37212.Zhv-tq.rst deleted file mode 100644 index 520a022..0000000 --- a/NEWS.d/2019-06-22-22-00-35.bpo-37212.Zhv-tq.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`unittest.mock.call` now preserves the order of keyword arguments in -repr output. Patch by Karthikeyan Singaravelan. diff --git a/NEWS.d/2019-07-10-23-07-11.bpo-21478.cCw9rF.rst b/NEWS.d/2019-07-10-23-07-11.bpo-21478.cCw9rF.rst deleted file mode 100644 index 0ac9b8e..0000000 --- a/NEWS.d/2019-07-10-23-07-11.bpo-21478.cCw9rF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Record calls to parent when autospecced object is attached to a mock using -:func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan. diff --git a/NEWS.d/2019-07-19-20-13-48.bpo-37555.S5am28.rst b/NEWS.d/2019-07-19-20-13-48.bpo-37555.S5am28.rst deleted file mode 100644 index 16d1d62..0000000 --- a/NEWS.d/2019-07-19-20-13-48.bpo-37555.S5am28.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix `NonCallableMock._call_matcher` returning tuple instead of `_Call` object -when `self._spec_signature` exists. Patch by Elizabeth Uselton
\ No newline at end of file diff --git a/NEWS.d/2019-07-26-00-12-29.bpo-37685.TqckMZ.rst b/NEWS.d/2019-07-26-00-12-29.bpo-37685.TqckMZ.rst deleted file mode 100644 index d1179a6..0000000 --- a/NEWS.d/2019-07-26-00-12-29.bpo-37685.TqckMZ.rst +++ /dev/null @@ -1,4 +0,0 @@ -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``). diff --git a/NEWS.d/2019-08-28-21-40-12.bpo-37972.kP-n4L.rst b/NEWS.d/2019-08-28-21-40-12.bpo-37972.kP-n4L.rst deleted file mode 100644 index 22cb052..0000000 --- a/NEWS.d/2019-08-28-21-40-12.bpo-37972.kP-n4L.rst +++ /dev/null @@ -1,5 +0,0 @@ -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 diff --git a/NEWS.d/2019-09-10-10-59-50.bpo-37251.8zn2o3.rst b/NEWS.d/2019-09-10-10-59-50.bpo-37251.8zn2o3.rst deleted file mode 100644 index 27fd1e4..0000000 --- a/NEWS.d/2019-09-10-10-59-50.bpo-37251.8zn2o3.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/NEWS.d/2019-09-11-14-45-30.bpo-38093.yQ6k7y.rst b/NEWS.d/2019-09-11-14-45-30.bpo-38093.yQ6k7y.rst deleted file mode 100644 index 24a5301..0000000 --- a/NEWS.d/2019-09-11-14-45-30.bpo-38093.yQ6k7y.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixes AsyncMock so it doesn't crash when used with AsyncContextManagers -or AsyncIterators. diff --git a/NEWS.d/2019-09-12-12-11-05.bpo-25597.mPMzVx.rst b/NEWS.d/2019-09-12-12-11-05.bpo-25597.mPMzVx.rst deleted file mode 100644 index 5ad8c6d..0000000 --- a/NEWS.d/2019-09-12-12-11-05.bpo-25597.mPMzVx.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/NEWS.d/2019-09-15-21-31-18.bpo-37828.gLLDX7.rst b/NEWS.d/2019-09-15-21-31-18.bpo-37828.gLLDX7.rst deleted file mode 100644 index c364009..0000000 --- a/NEWS.d/2019-09-15-21-31-18.bpo-37828.gLLDX7.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix default mock name in :meth:`unittest.mock.Mock.assert_called` exceptions. -Patch by Abraham Toriz Cruz. diff --git a/NEWS.d/2019-09-16-09-54-42.bpo-38136.MdI-Zb.rst b/NEWS.d/2019-09-16-09-54-42.bpo-38136.MdI-Zb.rst deleted file mode 100644 index 78cad24..0000000 --- a/NEWS.d/2019-09-16-09-54-42.bpo-38136.MdI-Zb.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/NEWS.d/2019-09-24-18-45-46.bpo-36871.p47knk.rst b/NEWS.d/2019-09-24-18-45-46.bpo-36871.p47knk.rst deleted file mode 100644 index 6b7b19a..0000000 --- a/NEWS.d/2019-09-24-18-45-46.bpo-36871.p47knk.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/NEWS.d/2019-09-25-21-37-02.bpo-38108.Jr9HU6.rst b/NEWS.d/2019-09-25-21-37-02.bpo-38108.Jr9HU6.rst deleted file mode 100644 index d7eea36..0000000 --- a/NEWS.d/2019-09-25-21-37-02.bpo-38108.Jr9HU6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Any synchronous magic methods on an AsyncMock now return a MagicMock. Any -asynchronous magic methods on a MagicMock now return an AsyncMock. diff --git a/NEWS.d/2019-09-27-16-31-28.bpo-38161.zehai1.rst b/NEWS.d/2019-09-27-16-31-28.bpo-38161.zehai1.rst deleted file mode 100644 index 0077033..0000000 --- a/NEWS.d/2019-09-27-16-31-28.bpo-38161.zehai1.rst +++ /dev/null @@ -1 +0,0 @@ -Removes _AwaitEvent from AsyncMock. diff --git a/NEWS.d/2019-09-28-20-16-40.bpo-38163.x51-vK.rst b/NEWS.d/2019-09-28-20-16-40.bpo-38163.x51-vK.rst deleted file mode 100644 index 5f7db26..0000000 --- a/NEWS.d/2019-09-28-20-16-40.bpo-38163.x51-vK.rst +++ /dev/null @@ -1,4 +0,0 @@ -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). diff --git a/NEWS.d/2019-10-14-21-14-55.bpo-38473.uXpVld.rst b/NEWS.d/2019-10-14-21-14-55.bpo-38473.uXpVld.rst deleted file mode 100644 index de80e89..0000000 --- a/NEWS.d/2019-10-14-21-14-55.bpo-38473.uXpVld.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use signature from inner mock for autospecced methods attached with -:func:`unittest.mock.attach_mock`. Patch by Karthikeyan Singaravelan. diff --git a/NEWS.d/2019-11-04-02-54-16.bpo-38669.pazXZ8.rst b/NEWS.d/2019-11-04-02-54-16.bpo-38669.pazXZ8.rst deleted file mode 100644 index 5060ecf..0000000 --- a/NEWS.d/2019-11-04-02-54-16.bpo-38669.pazXZ8.rst +++ /dev/null @@ -1 +0,0 @@ -Raise :exc:`TypeError` when passing target as a string with :meth:`unittest.mock.patch.object`.
\ No newline at end of file diff --git a/NEWS.d/2019-11-18-22-10-55.bpo-38839.di6tXv.rst b/NEWS.d/2019-11-18-22-10-55.bpo-38839.di6tXv.rst deleted file mode 100644 index 80c5a5b..0000000 --- a/NEWS.d/2019-11-18-22-10-55.bpo-38839.di6tXv.rst +++ /dev/null @@ -1 +0,0 @@ -Fix some unused functions in tests. Patch by Adam Johnson. diff --git a/NEWS.d/2019-11-19-16-28-25.bpo-38857.YPUkU9.rst b/NEWS.d/2019-11-19-16-28-25.bpo-38857.YPUkU9.rst deleted file mode 100644 index f28df28..0000000 --- a/NEWS.d/2019-11-19-16-28-25.bpo-38857.YPUkU9.rst +++ /dev/null @@ -1,4 +0,0 @@ -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. diff --git a/NEWS.d/2019-11-19-16-30-46.bpo-38859.AZUzL8.rst b/NEWS.d/2019-11-19-16-30-46.bpo-38859.AZUzL8.rst deleted file mode 100644 index c059539..0000000 --- a/NEWS.d/2019-11-19-16-30-46.bpo-38859.AZUzL8.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. diff --git a/NEWS.d/2019-12-14-14-38-40.bpo-21600.kC4Cgh.rst b/NEWS.d/2019-12-14-14-38-40.bpo-21600.kC4Cgh.rst deleted file mode 100644 index 0f72639..0000000 --- a/NEWS.d/2019-12-14-14-38-40.bpo-21600.kC4Cgh.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix :func:`mock.patch.stopall` to stop active patches that were created with -:func:`mock.patch.dict`. diff --git a/NEWS.d/2020-01-24-13-24-35.bpo-39082.qKgrq_.rst b/NEWS.d/2020-01-24-13-24-35.bpo-39082.qKgrq_.rst deleted file mode 100644 index 52c4ee1..0000000 --- a/NEWS.d/2020-01-24-13-24-35.bpo-39082.qKgrq_.rst +++ /dev/null @@ -1 +0,0 @@ -Allow AsyncMock to correctly patch static/class methods diff --git a/NEWS.d/2020-01-25-13-41-27.bpo-38932.1pu_8I.rst b/NEWS.d/2020-01-25-13-41-27.bpo-38932.1pu_8I.rst deleted file mode 100644 index d9ce8e8..0000000 --- a/NEWS.d/2020-01-25-13-41-27.bpo-38932.1pu_8I.rst +++ /dev/null @@ -1 +0,0 @@ -Mock fully resets child objects on reset_mock(). Patch by Vegard Stikbakke diff --git a/NEWS.d/2020-01-29-14-58-27.bpo-39485.Zy3ot6.rst b/NEWS.d/2020-01-29-14-58-27.bpo-39485.Zy3ot6.rst deleted file mode 100644 index f62c31f..0000000 --- a/NEWS.d/2020-01-29-14-58-27.bpo-39485.Zy3ot6.rst +++ /dev/null @@ -1,3 +0,0 @@ -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. |