merge with 3.4

This commit is contained in:
Georg Brandl 2014-10-29 09:00:37 +01:00
commit 9e67d801bd
2 changed files with 8 additions and 11 deletions

View File

@ -39,7 +39,9 @@ The Short Version
With that done, your options are:
* If you are dropping Python 2 support, use 2to3_ to port to Python 3
* If you are dropping Python 2 support, use :ref:`2to3 <2to3-reference>` to port
to Python 3
* If you are keeping Python 2 support, then start writing Python 2/3-compatible
code starting **TODAY**
@ -601,8 +603,6 @@ If you feel there is something missing from this document that should be added,
please email the python-porting_ mailing list.
.. _2to3: https://docs.python.org/2/library/2to3.html
.. _3to2: https://pypi.python.org/pypi/3to2
.. _Cheeseshop: PyPI_
.. _coverage: https://pypi.python.org/pypi/coverage

View File

@ -512,9 +512,8 @@ this list of calls for us:
Partial mocking
~~~~~~~~~~~~~~~
In some tests I wanted to mock out a call to `datetime.date.today()
<https://docs.python.org/library/datetime.html#datetime.date.today>`_ to return
a known date, but I didn't want to prevent the code under test from
In some tests I wanted to mock out a call to :func:`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 `datetime.date` is written in C, and
so I couldn't just monkey-patch out the static `date.today` method.
@ -556,14 +555,12 @@ is discussed in `this blog entry
Mocking a Generator Method
~~~~~~~~~~~~~~~~~~~~~~~~~~
A Python generator is a function or method that uses the `yield statement
<https://docs.python.org/reference/simple_stmts.html#the-yield-statement>`_ to
return a series of values when iterated over [#]_.
A Python generator is a function or method that uses the :keyword:`yield` statement
to return a series of values when iterated over [#]_.
A generator method / function is called to return the generator object. It is
the generator object that is then iterated over. The protocol method for
iteration is `__iter__
<https://docs.python.org/library/stdtypes.html#container.__iter__>`_, so we can
iteration is :meth:`~container.__iter__`, so we can
mock this using a `MagicMock`.
Here's an example class with an "iter" method implemented as a generator: