summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikita Sobolev <mail@sobolevn.me>2023-09-02 21:46:03 (GMT)
committerGitHub <noreply@github.com>2023-09-02 21:46:03 (GMT)
commitc5ce34f9b4963a672ce5993d165384e96b6eefe9 (patch)
tree14912c15a478138cf5fe1589e8b294808653bd63
parent54e8dd757cb3e41fc479be23db925fc3a475f185 (diff)
downloadcpython-c5ce34f9b4963a672ce5993d165384e96b6eefe9.zip
cpython-c5ce34f9b4963a672ce5993d165384e96b6eefe9.tar.gz
cpython-c5ce34f9b4963a672ce5993d165384e96b6eefe9.tar.bz2
[3.12] gh-101100: Fix sphinx warnings in `unittest.mock-examples.rst` (GH-108810) (#108813)
* [3.12] gh-101100: Fix sphinx warnings in `unittest.mock-examples.rst` (GH-108810). (cherry picked from commit 5141b1ebe07ad54279e0770b4704eaf76f24951d) Co-authored-by: Nikita Sobolev <mail@sobolevn.me> * Make the requested changes --------- Co-authored-by: AlexWaygood <alex.waygood@gmail.com>
-rw-r--r--Doc/library/unittest.mock-examples.rst13
-rw-r--r--Doc/tools/.nitignore1
2 files changed, 7 insertions, 7 deletions
diff --git a/Doc/library/unittest.mock-examples.rst b/Doc/library/unittest.mock-examples.rst
index 895b9f9..744fc9d 100644
--- a/Doc/library/unittest.mock-examples.rst
+++ b/Doc/library/unittest.mock-examples.rst
@@ -579,14 +579,14 @@ Partial mocking
In some tests I wanted to mock out a call to :meth:`datetime.date.today`
to return a known date, but I didn't want to prevent the code under test from
creating new date objects. Unfortunately :class:`datetime.date` is written in C, and
-so I couldn't just monkey-patch out the static :meth:`date.today` method.
+so I couldn't just monkey-patch out the static :meth:`datetime.date.today` method.
I found a simple way of doing this that involved effectively wrapping the date
class with a mock, but passing through calls to the constructor to the real
class (and returning real instances).
The :func:`patch decorator <patch>` is used here to
-mock out the ``date`` class in the module under test. The :attr:`side_effect`
+mock out the ``date`` class in the module under test. The :attr:`~Mock.side_effect`
attribute on the mock date class is then set to a lambda function that returns
a real date. When the mock date class is called a real date will be
constructed and returned by ``side_effect``. ::
@@ -766,8 +766,8 @@ mock has a nice API for making assertions about how your mock objects are used.
>>> mock.foo_bar.assert_called_with('baz', spam='eggs')
If your mock is only being called once you can use the
-:meth:`assert_called_once_with` method that also asserts that the
-:attr:`call_count` is one.
+:meth:`~Mock.assert_called_once_with` method that also asserts that the
+:attr:`~Mock.call_count` is one.
>>> mock.foo_bar.assert_called_once_with('baz', spam='eggs')
>>> mock.foo_bar()
@@ -835,7 +835,7 @@ One possibility would be for mock to copy the arguments you pass in. This
could then cause problems if you do assertions that rely on object identity
for equality.
-Here's one solution that uses the :attr:`side_effect`
+Here's one solution that uses the :attr:`~Mock.side_effect`
functionality. If you provide a ``side_effect`` function for a mock then
``side_effect`` will be called with the same args as the mock. This gives us an
opportunity to copy the arguments and store them for later assertions. In this
@@ -971,7 +971,8 @@ We can do this with :class:`MagicMock`, which will behave like a dictionary,
and using :data:`~Mock.side_effect` to delegate dictionary access to a real
underlying dictionary that is under our control.
-When the :meth:`__getitem__` and :meth:`__setitem__` methods of our ``MagicMock`` are called
+When the :meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods
+of our ``MagicMock`` are called
(normal dictionary access) then ``side_effect`` is called with the key (and in
the case of ``__setitem__`` the value too). We can also control what is returned.
diff --git a/Doc/tools/.nitignore b/Doc/tools/.nitignore
index 5a824a4..3d79b48 100644
--- a/Doc/tools/.nitignore
+++ b/Doc/tools/.nitignore
@@ -145,7 +145,6 @@ Doc/library/tkinter.ttk.rst
Doc/library/traceback.rst
Doc/library/tty.rst
Doc/library/turtle.rst
-Doc/library/unittest.mock-examples.rst
Doc/library/unittest.mock.rst
Doc/library/unittest.rst
Doc/library/urllib.parse.rst