[Python-modules-commits] [python-testfixtures] 01/07: importing python-testfixtures_4.13.3.orig.tar.gz
Michael Fladischer
fladi at moszumanska.debian.org
Sat Jan 28 15:40:03 UTC 2017
This is an automated email from the git hooks/post-receive script.
fladi pushed a commit to branch master
in repository python-testfixtures.
commit bdb10da94ce984ae8dd3926ee24f256b869e0b73
Author: Michael Fladischer <FladischerMichael at fladi.at>
Date: Thu Jan 26 17:39:23 2017 +0100
importing python-testfixtures_4.13.3.orig.tar.gz
---
.coveragerc | 22 +
.gitignore | 22 +
.travis.yml | 32 +
LICENSE.txt | 22 +
README.rst | 18 +
docs/Makefile | 78 ++
docs/api.txt | 308 ++++++
docs/changes.txt | 700 ++++++++++++++
docs/comparing.txt | 898 ++++++++++++++++++
docs/components.txt | 70 ++
docs/conf.py | 38 +
docs/datetime.txt | 480 ++++++++++
docs/description.txt | 47 +
docs/development.txt | 66 ++
docs/exceptions.txt | 139 +++
docs/files.txt | 649 +++++++++++++
docs/index.txt | 49 +
docs/installation.txt | 30 +
docs/license.txt | 5 +
docs/logging.txt | 431 +++++++++
docs/make.bat | 100 ++
docs/mocking.txt | 414 ++++++++
docs/popen.txt | 133 +++
docs/streams.txt | 98 ++
docs/utilities.txt | 170 ++++
docs/warnings.txt | 90 ++
requirements.txt | 1 +
setup.cfg | 2 +
setup.py | 44 +
testfixtures/__init__.py | 28 +
testfixtures/comparison.py | 725 ++++++++++++++
testfixtures/compat.py | 54 ++
testfixtures/components.py | 45 +
testfixtures/logcapture.py | 201 ++++
testfixtures/manuel.py | 94 ++
testfixtures/outputcapture.py | 78 ++
testfixtures/popen.py | 141 +++
testfixtures/replace.py | 140 +++
testfixtures/resolve.py | 44 +
testfixtures/rmtree.py | 66 ++
testfixtures/shouldraise.py | 97 ++
testfixtures/shouldwarn.py | 55 ++
testfixtures/tdatetime.py | 223 +++++
testfixtures/tempdirectory.py | 401 ++++++++
testfixtures/tests/__init__.py | 4 +
testfixtures/tests/compat.py | 58 ++
testfixtures/tests/configparser-read.txt | 45 +
testfixtures/tests/configparser-write.txt | 43 +
testfixtures/tests/directory-contents.txt | 32 +
testfixtures/tests/sample1.py | 70 ++
testfixtures/tests/sample2.py | 19 +
testfixtures/tests/test_compare.py | 1372 +++++++++++++++++++++++++++
testfixtures/tests/test_comparison.py | 742 +++++++++++++++
testfixtures/tests/test_components.py | 45 +
testfixtures/tests/test_date.py | 246 +++++
testfixtures/tests/test_datetime.py | 356 +++++++
testfixtures/tests/test_diff.py | 54 ++
testfixtures/tests/test_docs.py | 26 +
testfixtures/tests/test_generator.py | 21 +
testfixtures/tests/test_log_capture.py | 233 +++++
testfixtures/tests/test_logcapture.py | 384 ++++++++
testfixtures/tests/test_manuel.py | 235 +++++
testfixtures/tests/test_manuel_examples.py | 35 +
testfixtures/tests/test_outputcapture.py | 76 ++
testfixtures/tests/test_popen.py | 395 ++++++++
testfixtures/tests/test_popen_docs.py | 140 +++
testfixtures/tests/test_rangecomparison.py | 189 ++++
testfixtures/tests/test_replace.py | 455 +++++++++
testfixtures/tests/test_replacer.py | 203 ++++
testfixtures/tests/test_roundcomparison.py | 155 +++
testfixtures/tests/test_should_raise.py | 292 ++++++
testfixtures/tests/test_shouldwarn.py | 119 +++
testfixtures/tests/test_stringcomparison.py | 52 +
testfixtures/tests/test_tempdir.py | 112 +++
testfixtures/tests/test_tempdirectory.py | 411 ++++++++
testfixtures/tests/test_time.py | 185 ++++
testfixtures/tests/test_wrap.py | 236 +++++
testfixtures/utils.py | 65 ++
testfixtures/version.txt | 1 +
79 files changed, 14654 insertions(+)
diff --git a/.coveragerc b/.coveragerc
new file mode 100644
index 0000000..5a84279
--- /dev/null
+++ b/.coveragerc
@@ -0,0 +1,22 @@
+[run]
+branch = True
+parallel = True
+
+[report]
+exclude_lines =
+ # the original exclude
+ pragma: no cover
+
+ # code executed only when tests fail
+ 'No exception raised!'
+ self\.fail\('Expected
+
+ # example code that we don't want to cover with pragma statements
+ guppy =
+
+[paths]
+src =
+ ./testfixtures/
+ C:\Jenkins\workspace\testfixtures-virtualenv\*\testfixtures
+ /var/lib/jenkins/slave/workspace/testfixtures-virtualenv/*/testfixtures
+ /Users/Shared/Jenkins/Home/workspace/testfixtures-virtualenv/*/testfixtures
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0a1fdb0
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,22 @@
+/.installed.cfg
+/bin/
+/develop-eggs
+/dist
+/docs/_build
+/eggs
+/*.egg-info/
+/parts/
+*.pyc
+/.coverage
+/*.xml
+/.tox
+/htmlcov
+/include
+/lib
+/local
+/man
+/.Python
+.noseids
+desc.html
+pip-selfcheck.json
+.coverage.*
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..ad19bfb
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,32 @@
+language: python
+
+# for container-y googdness:
+sudo: false
+
+python:
+ - "3.5"
+ - "3.4"
+ - "3.3"
+ - "2.7"
+
+# command to install dependencies
+install: "pip install -Ue .[test,build]"
+
+# command to run tests, e.g. python setup.py test
+script: nosetests --with-cov --cov=testfixtures
+
+after_success:
+ - coverage combine
+ - coveralls
+
+deploy:
+ provider: pypi
+ user: chrisw
+ password:
+ secure: QrmUWPegJzGIYGI8XGY7ztjHTbpMgVDLNV6f9fjjAoo8efOubJh/BASjWD3ESPlIo1j5tGCcSRP2MN1+30zBxq7a7oiCnthISx42DP6Ih+wLHFCu7uBm12AH96hIOQUAtQotNSwB9dJAJIKKom7xkrV/nStjbcqC7hosTZlTy6o=
+ on:
+ tags: true
+ repo: Simplistix/testfixtures
+ python: "3.4"
+ skip_cleanup: true
+ distributions: "sdist bdist_wheel"
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..63df5fd
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,22 @@
+Copyright (c) 2008-2015 Simplistix Ltd
+Copyright (c) 2015-2016 Chris Withers
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without restriction,
+including without limitation the rights to use, copy, modify, merge,
+publish, distribute, sublicense, and/or sell copies of the Software,
+and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..0a06a7a
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,18 @@
+|Travis|_ |Coveralls|_ |Docs|_
+
+.. |Travis| image:: https://api.travis-ci.org/Simplistix/testfixtures.svg?branch=master
+.. _Travis: https://travis-ci.org/Simplistix/testfixtures
+
+.. |Coveralls| image:: https://coveralls.io/repos/Simplistix/testfixtures/badge.svg?branch=master
+.. _Coveralls: https://coveralls.io/r/Simplistix/testfixtures?branch=master
+
+.. |Docs| image:: https://readthedocs.org/projects/testfixtures/badge/?version=latest
+.. _Docs: http://testfixtures.readthedocs.org/en/latest/
+
+
+TestFixtures
+============
+
+TestFixtures is a collection of helpers and mock objects that are useful when
+writing unit tests or doc tests.
+
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 0000000..1de0715
--- /dev/null
+++ b/docs/Makefile
@@ -0,0 +1,78 @@
+# Makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS =
+SPHINXBUILD ?= sphinx-build
+PAPER =
+
+# Internal variables.
+PAPEROPT_a4 = -D latex_paper_size=a4
+PAPEROPT_letter = -D latex_paper_size=letter
+ALLSPHINXOPTS = -d _build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+
+.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest
+
+help:
+ @echo "Please use \`make <target>' where <target> is one of"
+ @echo " html to make standalone HTML files"
+ @echo " dirhtml to make HTML files named index.html in directories"
+ @echo " pickle to make pickle files"
+ @echo " json to make JSON files"
+ @echo " htmlhelp to make HTML files and a HTML help project"
+ @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
+ @echo " changes to make an overview of all changed/added/deprecated items"
+ @echo " linkcheck to check all external links for integrity"
+ @echo " doctest to run all doctests embedded in the documentation (if enabled)"
+
+clean:
+ -rm -rf _build/*
+
+html:
+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) _build/html
+ @echo
+ @echo "Build finished. The HTML pages are in _build/html."
+
+dirhtml:
+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) _build/dirhtml
+ @echo
+ @echo "Build finished. The HTML pages are in _build/dirhtml."
+
+pickle:
+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) _build/pickle
+ @echo
+ @echo "Build finished; now you can process the pickle files."
+
+json:
+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) _build/json
+ @echo
+ @echo "Build finished; now you can process the JSON files."
+
+htmlhelp:
+ $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) _build/htmlhelp
+ @echo
+ @echo "Build finished; now you can run HTML Help Workshop with the" \
+ ".hhp project file in _build/htmlhelp."
+
+latex:
+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) _build/latex
+ @echo
+ @echo "Build finished; the LaTeX files are in _build/latex."
+ @echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
+ "run these through (pdf)latex."
+
+changes:
+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) _build/changes
+ @echo
+ @echo "The overview file is in _build/changes."
+
+linkcheck:
+ $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) _build/linkcheck
+ @echo
+ @echo "Link check complete; look for any errors in the above output " \
+ "or in _build/linkcheck/output.txt."
+
+doctest:
+ $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) _build/doctest
+ @echo "Testing of doctests in the sources finished, look at the " \
+ "results in _build/doctest/output.txt."
diff --git a/docs/api.txt b/docs/api.txt
new file mode 100644
index 0000000..463ec46
--- /dev/null
+++ b/docs/api.txt
@@ -0,0 +1,308 @@
+API Reference
+=============
+
+.. currentmodule:: testfixtures
+
+.. autoclass:: Comparison
+
+.. autoclass:: LogCapture
+ :members:
+
+.. autoclass:: OutputCapture
+ :members:
+
+.. autoclass:: Replace
+ :members:
+
+.. autoclass:: Replacer
+ :members:
+
+.. autofunction:: replace
+
+.. autoclass:: RoundComparison
+ :members:
+
+.. autoclass:: RangeComparison
+ :members:
+
+.. autoclass:: ShouldRaise
+ :members:
+
+.. autoclass:: ShouldWarn
+ :members:
+
+.. autoclass:: ShouldNotWarn
+ :members:
+
+.. autoclass:: StringComparison
+ :members:
+
+.. autoclass:: TempDirectory
+ :members:
+
+.. autofunction:: compare(x, y, prefix=None, suffix=None, raises=True, recursive=True, strict=False, comparers=None, **kw)
+
+.. autofunction:: testfixtures.comparison.register
+
+.. autofunction:: testfixtures.comparison.compare_simple
+
+.. autofunction:: testfixtures.comparison.compare_with_type
+
+.. autofunction:: testfixtures.comparison.compare_sequence
+
+.. autofunction:: testfixtures.comparison.compare_generator
+
+.. autofunction:: testfixtures.comparison.compare_tuple
+
+.. autofunction:: testfixtures.comparison.compare_dict
+
+.. autofunction:: testfixtures.comparison.compare_set
+
+.. autofunction:: testfixtures.comparison.compare_text
+
+.. autofunction:: diff
+
+.. autofunction:: generator
+
+.. autofunction:: log_capture
+
+.. autoclass:: should_raise
+
+.. autofunction:: tempdir
+
+.. function:: test_date(year=2001, month=1, day=1, delta=None, delta_type='days', strict=False)
+
+ A function that returns a mock object that can be used in place of
+ the :class:`datetime.date` class but where the return value of
+ :meth:`~datetime.date.today` can be controlled.
+
+ If a single positional argument of ``None`` is passed, then the
+ queue of dates to be returned will be empty and you will need to
+ call :meth:`~tdate.set` or :meth:`~tdate.add` before calling
+ :meth:`~tdate.today`.
+
+ :param year: An optional year used to create the first date returned by
+ :meth:`~datetime.date.today`.
+
+ :param month: An optional month used to create the first date returned by
+ :meth:`~datetime.date.today`.
+
+ :param day: An optional day used to create the first date returned by
+ :meth:`~datetime.date.today`.
+
+ :param delta: The size of the delta to use between values returned
+ from :meth:`~datetime.date.today`. If not specified,
+ it will increase by 1 with each call to
+ :meth:`~datetime.date.today`.
+
+ :param delta_type: The type of the delta to use between values returned
+ from :meth:`~datetime.date.today`. This can be
+ any keyword parameter accepted by the
+ :class:`~datetime.timedelta` constructor.
+
+ :param strict: If ``True``, calling the mock class and any of its
+ methods will result in an instance of the mock
+ being returned. If ``False``, the default, an
+ instance of :class:`~datetime.date` will be returned
+ instead.
+
+ The mock returned will behave exactly as the :class:`datetime.date`
+ class with the exception of the following members:
+
+ .. method:: tdate.add(*args, **kw)
+
+ This will add the :class:`datetime.date` created from the
+ supplied parameters to the queue of dates to be returned by
+ :meth:`~datetime.date.today`. An instance
+ of :class:`~datetime.date` may also be passed as a single
+ positional argument.
+
+ .. method:: tdate.set(*args, **kw)
+
+ This will set the :class:`datetime.date` created from the
+ supplied parameters as the next date to be returned by
+ :meth:`~datetime.date.today`, regardless of any dates in the
+ queue. An instance
+ of :class:`~datetime.date` may also be passed as a single
+ positional argument.
+
+ .. classmethod:: tdate.today()
+
+ This will return the next supplied or calculated date from the
+ internal queue, rather than the actual current date.
+
+.. function:: test_datetime(year=2001, month=1, day=1, hour=0, minute=0, second=0, microsecond=0,tzinfo=None, delta=None, delta_type='seconds', date_type=datetime.date, strict=False)
+
+ A function that returns a mock object that can be used in place of
+ the :class:`datetime.datetime` class but where the return value of
+ :meth:`~tdatetime.now` can be controlled.
+
+ If a single positional argument of ``None`` is passed, then the
+ queue of datetimes to be returned will be empty and you will need to
+ call :meth:`~tdatetime.set` or :meth:`~tdatetime.add` before calling
+ :meth:`~tdatetime.now` or :meth:`~tdatetime.utcnow`.
+
+ :param year: An optional year used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param month: An optional month used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param day: An optional day used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param hour: An optional hour used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param minute: An optional minute used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param second: An optional second used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param microsecond: An optional microsecond used to create the first datetime returned by
+ :meth:`~tdatetime.now`.
+
+ :param tzinfo: An optional tzinfo that will be used to indicate the
+ timezone intended for the values returned by
+ returned by :meth:`~tdatetime.now`. It will be used to
+ correctly calculate return values when `tz` is passed
+ to :meth:`~tdatetime.now` and when
+ :meth:`~tdatetime.utcnow` is called.
+
+ :param delta: The size of the delta to use between values returned
+ from :meth:`~tdatetime.now`. If not specified,
+ it will increase by 1 with each call to
+ :meth:`~tdatetime.now`.
+
+ :param delta_type: The type of the delta to use between values returned
+ from :meth:`~tdatetime.now`. This can be
+ any keyword parameter accepted by the
+ :class:`~datetime.timedelta` constructor.
+
+ :param date_type: The type to use for the return value of the
+ :meth:`~datetime.datetime.date` method. This can
+ help with gotchas that occur when type checking
+ if performed on values returned by the mock's
+ :meth:`~datetime.datetime.date` method.
+
+ :param strict: If ``True``, calling the mock class and any of its
+ methods will result in an instance of the mock
+ being returned. If ``False``, the default, an
+ instance of :class:`~datetime.datetime` will be
+ returned instead.
+
+ The mock returned will behave exactly as the :class:`datetime.datetime`
+ class with the exception of the following members:
+
+ .. method:: tdatetime.add(*args, **kw)
+
+ This will add the :class:`datetime.datetime` created from the
+ supplied parameters to the queue of datetimes to be returned by
+ :meth:`~tdatetime.now` or :meth:`~tdatetime.utcnow`. An instance
+ of :class:`~datetime.datetime` may also be passed as a single
+ positional argument.
+
+ .. method:: tdatetime.set(*args, *kw)
+
+ This will set the :class:`datetime.datetime` created from the
+ supplied parameters as the next datetime to be returned by
+ :meth:`~tdatetime.now` or :meth:`~tdatetime.utcnow`, clearing out
+ any datetimes in the queue. An instance
+ of :class:`~datetime.datetime` may also be passed as a single
+ positional argument.
+
+ .. classmethod:: tdatetime.now([tz])
+
+ :param tz: An optional timezone to apply to the returned time.
+ If supplied, it must be an instance of a
+ :class:`~datetime.tzinfo` subclass.
+
+ This will return the next supplied or calculated datetime from the
+ internal queue, rather than the actual current datetime.
+
+ If `tz` is supplied, it will be applied to the datetime that
+ would have have been returned from the internal queue, treating
+ that datetime as if it were in the UTC timezone.
+
+ .. classmethod:: tdatetime.utcnow()
+
+ This will return the next supplied or calculated datetime from the
+ internal queue, rather than the actual current UTC datetime.
+
+ No timezone will be applied, even that supplied to the constructor.
+
+ .. classmethod:: tdatetime.date()
+
+ This will return the date component of the current mock instance,
+ but using the date type supplied when the mock class was created.
+
+.. function:: test_time(year=2001, month=1, day=1, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, delta=None, delta_type='seconds')
+
+ A function that returns a mock object that can be used in place of
+ the :class:`time.time` function but where the return value can be
+ controlled.
+
+ If a single positional argument of ``None`` is passed, then the
+ queue of times to be returned will be empty and you will need to
+ call :meth:`~ttime.set` or :meth:`~ttime.add` before calling
+ the mock.
+
+ :param year: An optional year used to create the first time returned.
+
+ :param month: An optional month used to create the first time.
+
+ :param day: An optional day used to create the first time.
+
+ :param hour: An optional hour used to create the first time.
+
+ :param minute: An optional minute used to create the first time.
+
+ :param second: An optional second used to create the first time.
+
+ :param microsecond: An optional microsecond used to create the first time.
+
+ :param delta: The size of the delta to use between values returned.
+ If not specified, it will increase by 1 with each
+ call to the mock.
+
+ :param delta_type: The type of the delta to use between values
+ returned. This can be
+ any keyword parameter accepted by the
+ :class:`~datetime.timedelta` constructor.
+
+ The mock additionally has the following methods available on it:
+
+ .. method:: ttime.add(*args, **kw)
+
+ This will add the time specified by the supplied parameters to the
+ queue of times to be returned by calls to the mock. The
+ parameters are the same as the :class:`datetime.datetime`
+ constructor. An instance of :class:`~datetime.datetime` may also
+ be passed as a single positional argument.
+
+ .. method:: ttime.set(*args, **kw)
+
+ This will set the time specified by the supplied parameters as
+ the next time to be returned by a call to the mock, regardless of
+ any times in the queue. The parameters are the same as the
+ :class:`datetime.datetime` constructor. An instance of
+ :class:`~datetime.datetime` may also be passed as a single
+ positional argument.
+
+.. autofunction:: wrap
+
+.. autoclass:: testfixtures.components.TestComponents
+ :members:
+
+.. autoclass:: testfixtures.manuel.Files
+
+.. data:: not_there
+
+ A singleton used to represent the absence of a particular attribute.
+
+.. currentmodule:: testfixtures.popen
+
+.. autoclass:: testfixtures.popen.MockPopen
+ :members:
+
diff --git a/docs/changes.txt b/docs/changes.txt
new file mode 100644
index 0000000..9e311f0
--- /dev/null
+++ b/docs/changes.txt
@@ -0,0 +1,700 @@
+Changes
+=======
+
+.. currentmodule:: testfixtures
+
+4.13.3 (13 December 2016)
+-------------------------
+
+- :func:`compare` now better handled equality comparison with ``ignore_eq=True``
+ when either of the objects being compared cannot be hashed.
+
+4.13.2 (16 November 2016)
+-------------------------
+
+- Fixed a bug where a :class:`LogCapture` wouldn't be cleared when used via
+ :func:`log_capture` on a base class and sub class execute the same test.
+
+Thanks to "mlabonte" for the bug report.
+
+4.13.1 (2 November 2016)
+------------------------
+
+- When ``ignore_eq`` is used with :func:`compare`, fall back to comparing by
+ hash if not type-specific comparer can be found.
+
+4.13.0 (2 November 2016)
+------------------------
+
+- Add support to :func:`compare` for ignoring broken ``__eq__`` implementations.
+
+4.12.0 (18 October 2016)
+------------------------
+
+- Add support for specifying a callable to extract rows from log records
+ when using :class:`LogCapture`.
+
+- Add support for recursive comparison of log messages with :class:`LogCapture`.
+
+4.11.0 (12 October 2016)
+-------------------------
+
+- Allow the attributes returned in :meth:`LogCapture.actual` rows to be
+ specified.
+
+- Allow a default to be specified for encoding in :meth:`TempDirectory.read` and
+ :meth:`TempDirectory.write`.
+
+4.10.1 (5 September 2016)
+-------------------------
+
+- Better docs for :meth:`TempDirectory.compare`.
+
+- Remove the need for expected paths supplied to :meth:`TempDirectory.compare`
+ to be in sorted order.
+
+- Document a good way of restoring ``stdout`` when in a debugger.
+
+- Fix handling of trailing slashes in :meth:`TempDirectory.compare`.
+
+Thanks to Maximilian Albert for the :meth:`TempDirectory.compare` docs.
+
+4.10.0 (17 May 2016)
+--------------------
+
+- Fixed examples in documentation broken in 4.5.1.
+
+- Add :class:`RangeComparison` for comparing against values that fall in a
+ range.
+
+- Add :meth:`~popen.MockPopen.set_default` to :class:`~popen.MockPopen`.
+
+Thanks to Asaf Peleg for the :class:`RangeComparison` implementation.
+
+4.9.1 (19 February 2016)
+------------------------
+
+- Fix for use with PyPy, broken since 4.8.0.
+
+Thanks to Nicola Iarocci for the pull request to fix.
+
+4.9.0 (18 February 2016)
+------------------------
+
+- Added the `suffix` parameter to :func:`compare` to allow failure messages
+ to include some additional context.
+
+- Update package metadata to indicate Python 3.5 compatibility.
+
+Thanks for Felix Yan for the metadata patch.
+
+Thanks to Wim Glenn for the suffix patch.
+
+4.8.0 (2 February 2016)
+-----------------------
+
+- Introduce a new :class:`Replace` context manager and make :class:`Replacer`
+ callable. This gives more succinct and easy to read mocking code.
+
+- Add :class:`ShouldWarn` and :class:`ShouldNotWarn` context managers.
+
+4.7.0 (10 December 2015)
+------------------------
+
+- Add the ability to pass ``raises=False`` to :func:`compare` to just get
+ and resulting message back rather than having an exception raised.
+
+4.6.0 (3 December 2015)
+------------------------
+
+- Fix a bug that mean symlinked directories would never show up when using
+ :meth:`TempDirectory.compare` and friends.
+
+- Add the ``followlinks`` parameter to :meth:`TempDirectory.compare` to
+ indicate that symlinked or hard linked directories should be recursed into
+ when using ``recursive=True``.
+
+4.5.1 (23 November 2015)
+------------------------
+
+- Switch from :class:`cStringIO` to :class:`StringIO` in :class:`OutputCapture`
+ to better handle unicode being written to `stdout` or `stderr`.
+
+Thanks to "tell-k" for the patch.
+
+4.5.0 (13 November 2015)
+------------------------
+
+- :class:`LogCapture`, :class:`OutputCapture` and :class:`TempDirectory` now
+ explicitly show what is expected versus actual when reporting differences.
+
+Thanks to Daniel Fortunov for the pull request.
+
+4.4.0 (1 November 2015)
+-----------------------
+
+- Add support for labelling the arguments passed to :func:`compare`.
+
+- Allow ``expected`` and ``actual`` keyword parameters to be passed to
+ :func:`compare`.
+
+- Fix ``TypeError: unorderable types`` when :func:`compare` found multiple
+ differences in sets and dictionaries on Python 3.
+
+- Add official support for Python 3.5.
+
+- Drop official support for Python 2.6.
+
+Thanks to Daniel Fortunov for the initial ideas for explicit ``expected`` and
+``actual`` support in :func:`compare`.
+
+4.3.3 (15 September 2015)
+-------------------------
+
+- Add wheel distribution to release.
+
+- Attempt to fix up various niggles from the move to Travis CI for doing
+ releases.
+
+4.3.2 (15 September 2015)
+-------------------------
+
+- Fix broken 4.3.1 tag.
+
+4.3.1 (15 September 2015)
+-------------------------
+
+- Fix build problems introduced by moving the build process to Travis CI.
+
+4.3.0 (15 September 2015)
+-------------------------
+
+- Add :meth:`TempDirectory.compare` with a cleaner, more explicit API that
+ allows comparison of only the files in a temporary directory.
+
+- Deprecate :meth:`TempDirectory.check`, :meth:`TempDirectory.check_dir`
+ and :meth:`TempDirectory.check_all`
+
+- Relax absolute-path rules so that if it's inside the :class:`TempDirectory`,
+ it's allowed.
+
+- Allow :class:`OutputCapture` to separately check output to ``stdout`` and
+ ``stderr``.
+
+4.2.0 (11 August 2015)
+----------------------
+
+- Add :class:`~testfixtures.popen.MockPopen`, a mock helpful when testing
+ code that uses :class:`subprocess.Popen`.
+
+- :class:`ShouldRaise` now subclasses :class:`object`, so that subclasses of it
+ may use :meth:`super()`.
+
+- Drop official support for Python 3.2.
+
+Thanks to BATS Global Markets for donating the code for
+:class:`~testfixtures.popen.MockPopen`.
+
+4.1.2 (30 January 2015)
+-----------------------
+
+- Clarify documentation for ``name`` parameter to :class:`LogCapture`.
+
+- :class:`ShouldRaise` now shows different output when two exceptions have
+ the same representation but still differ.
+
+- Fix bug that could result in a :class:`dict` comparing equal to a
+ :class:`list`.
+
+Thanks to Daniel Fortunov for the documentation clarification.
+
+4.1.1 (30 October 2014)
+-------------------------
+
+- Fix bug that prevented logger propagation to be controlled by the
+ :class:`log_capture` decorator.
+
+Thanks to John Kristensen for the fix.
+
+4.1.0 (14 October 2014)
+-------------------------
+
+- Fix :func:`compare` bug when :class:`dict` instances with
+ :class:`tuple` keys were not equal.
+
+- Allow logger propagation to be controlled by :class:`LogCapture`.
+
+- Enabled disabled loggers if a :class:`LogCapture` is attached to them.
+
+Thanks to Daniel Fortunov for the :func:`compare` fix.
+
+4.0.2 (10 September 2014)
+-------------------------
+
+- Fix "maximum recursion depth exceeded" when comparing a string with
+ bytes that did not contain the same character.
+
+4.0.1 (4 August 2014)
+---------------------
+
+- Fix bugs when string compared equal and options to :func:`compare`
+ were used.
+
+- Fix bug when strictly comparing two nested structures containing
+ identical objects.
+
+4.0.0 (22 July 2014)
+--------------------
+
+- Moved from buildout to virtualenv for development.
+
+- The ``identity`` singleton is no longer needed and has been
+ removed.
+
+- :func:`compare` will now work recursively on data structures for
+ which it has registered comparers, giving more detailed feedback on
+ nested data structures. Strict comparison will also be applied
+ recursively.
+
+- Re-work the interfaces for using custom comparers with
+ :func:`compare`.
+
+- Better feedback when comparing :func:`collections.namedtuple`
+ instances.
+
+- Official support for Python 3.4.
+
+Thanks to Yevgen Kovalienia for the typo fix in :doc:`datetime`.
+
+3.1.0 (25 May 2014)
+-------------------
+
+- Added :class:`RoundComparison` helper for comparing numerics to a
+ specific precision.
+
+- Added ``unless`` parameter to :class:`ShouldRaise` to cover
+ some very specific edge cases.
+
+- Fix missing imports that showed up :class:`TempDirectory` had to do
+ the "convoluted folder delete" dance on Windows.
+
+Thanks to Jon Thompson for the :class:`RoundComparison` implementation.
+
+Thanks to Matthias Lehmann for the import error reports.
+
+3.0.2 (7 April 2014)
+--------------------
+
+- Document :attr:`ShouldRaise.raised` and make it part of the official
+ API.
+
+- Fix rare failures when cleaning up :class:`TempDirectory` instances
+ on Windows.
+
+3.0.1 (10 June 2013)
+--------------------
+
+- Some documentation tweaks and clarifications.
+
+- Fixed a bug which masked exceptions when using :func:`compare` with
+ a broken generator.
+
+- Fixed a bug when comparing a generator with a non-generator.
+
+- Ensure :class:`LogCapture` cleans up global state it may effect.
+
+- Fixed replacement of static methods using a :class:`Replacer`.
+
+3.0.0 (5 March 2013)
+--------------------
+
+- Added compatibility with Python 3.2 and 3.3.
+
+- Dropped compatibility with Python 2.5.
+
+- Removed support for the following obscure uses of
+ :class:`should_raise`:
+
+ .. code-block:: python
+
+ should_raise(x, IndexError)[1]
+ should_raise(x, KeyError)['x']
+
+- Dropped the `mode` parameter to :meth:`TempDirectory.read`.
+
+- :meth:`TempDirectory.makedir` and :meth:`TempDirectory.write` no
+ longer accept a `path` parameter.
+
+- :meth:`TempDirectory.read` and :meth:`TempDirectory.write` now
+ accept an `encoding` parameter to control how non-byte data is
+ decoded and encoded respectively.
+
+- Added the `prefix` parameter to :func:`compare` to allow failure
+ messages to be made more informative.
+
+- Fixed a problem when using sub-second deltas with :func:`test_time`.
+
+2.3.5 (13 August 2012)
+----------------------
+
+- Fixed a bug in :func:`~testfixtures.comparison.compare_dict` that
+ mean the list of keys that were the same was returned in an unsorted
+ order.
+
+2.3.4 (31 January 2012)
+-----------------------
+
+- Fixed compatibility with Python 2.5
+
+- Fixed compatibility with Python 2.7
+
+- Development model moved to continuous integration using Jenkins.
+
+- Introduced `Tox`__ based testing to ensure packaging and
+ dependencies are as expected.
+
+ __ http://tox.testrun.org/latest/
+
+- 100% line and branch coverage with tests.
+
+- Mark :class:`test_datetime`, :class:`test_date` and
+ :class:`test_time` such that nose doesn't mistake them as tests.
+
+2.3.3 (12 December 2011)
... 14216 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-testfixtures.git
More information about the Python-modules-commits
mailing list