summaryrefslogtreecommitdiffstats
path: root/Lib/unittest/mock.py
diff options
context:
space:
mode:
authorMario Corchero <mcorcherojim@bloomberg.net>2019-09-09 14:18:06 (GMT)
committerLisa Roach <lisaroach14@gmail.com>2019-09-09 14:18:06 (GMT)
commitf5e7f39d2916ed150e80381faed125f405a11e11 (patch)
treed0304a363837b624ac4c141075015ebec04fa7ae /Lib/unittest/mock.py
parentfa3a38d81faaf96d17b5a7f0248b9923e3a648cc (diff)
downloadcpython-f5e7f39d2916ed150e80381faed125f405a11e11.zip
cpython-f5e7f39d2916ed150e80381faed125f405a11e11.tar.gz
cpython-f5e7f39d2916ed150e80381faed125f405a11e11.tar.bz2
docs: Add references to AsyncMock in unittest.mock.patch (#13681)
Update the docs as patch can now return an AsyncMock if the patched object is an async function.
Diffstat (limited to 'Lib/unittest/mock.py')
-rw-r--r--Lib/unittest/mock.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
index c9194ff..c26b367 100644
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -1631,8 +1631,9 @@ def patch(
is patched with a `new` object. When the function/with statement exits
the patch is undone.
- If `new` is omitted, then the target is replaced with a
- `MagicMock`. If `patch` is used as a decorator and `new` is
+ If `new` is omitted, then the target is replaced with an
+ `AsyncMock if the patched object is an async function or a
+ `MagicMock` otherwise. If `patch` is used as a decorator and `new` is
omitted, the created mock is passed in as an extra argument to the
decorated function. If `patch` is used as a context manager the created
mock is returned by the context manager.
@@ -1650,8 +1651,8 @@ def patch(
patch to pass in the object being mocked as the spec/spec_set object.
`new_callable` allows you to specify a different class, or callable object,
- that will be called to create the `new` object. By default `MagicMock` is
- used.
+ that will be called to create the `new` object. By default `AsyncMock` is
+ used for async functions and `MagicMock` for the rest.
A more powerful form of `spec` is `autospec`. If you set `autospec=True`
then the mock will be created with a spec from the object being replaced.