pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/py-testtools

Module Name:    pkgsrc
Committed By:   obache
Date:           Fri Jan 24 13:22:22 UTC 2014

Modified Files:
        pkgsrc/devel/py-testtools: Makefile PLIST distinfo

Log Message:
Update py-testtools to 0.9.34.



* Added ability for ``testtools.TestCase`` instances to force a test to
  fail, even if no assertions failed. (Thomi Richards)

* Added ``testtools.content.StacktraceContent``, a content object that
  automatically creates a ``StackLinesContent`` object containing the current
  stack trace. (Thomi Richards)

* ``AnyMatch`` is now exported properly in ``testtools.matchers``.
  (Robert Collins, Rob Kennedy, github #44)

* In Python 3.3, if there are duplicate test ids, tests.sort() will
  fail and raise TypeError. Detect the duplicate test ids firstly in
  sorted_tests() to ensure that all test ids are unique.
  (Kui Shi, #1243922)

* ``json_content`` is now in the ``__all__`` attribute for
  ``testtools.content``. (Robert Collins)

* Network tests now bind to to avoid (even temporary) network
  visible ports. (Benedikt Morbach, github #46)

* Test listing now explicitly indicates by printing 'Failed to import' and
  exiting (2) when an import has failed rather than only signalling through the
  test name. (Robert Collins, #1245672)

* ``test_compat.TestDetectEncoding.test_bom`` now works on Python 3.3 - the
  corner case with euc_jp is no longer permitted in Python 3.3 so we can
  skip it. (Martin [gz], #1251962)



* Added ``addDetailuniqueName`` method to ``testtools.TestCase`` class.
  (Thomi Richards)

* Removed some unused code from ``testtools.content.TracebackContent``.
  (Thomi Richards)

* Added ``testtools.StackLinesContent``: a content object for displaying
  pre-processed stack lines. (Thomi Richards)

* ``StreamSummary`` was calculating testsRun incorrectly: ``exists`` status
  tests were counted as run tests, but they are not.
  (Robert Collins, #1203728)


Regular maintenance release.  Special thanks to new contributor, Xiao Hanyu!


 * ``testttols.compat._format_exc_info`` has been refactored into several
   smaller functions. (Thomi Richards)


* Stacktrace filtering no longer hides unittest frames that are surrounded by
  user frames. We will reenable this when we figure out a better algorithm for
  retaining meaning. (Robert Collins, #1188420)

* The compatibility code for skipped tests with unittest2 was broken.
  (Robert Collins, #1190951)

* Various documentation improvements (Clint Byrum, Xiao Hanyu).



* ``ExpectedException`` now accepts a msg parameter for describing an error,
  much the same as assertEquals etc. (Robert Collins)


A new sort of TestResult, the StreamResult has been added, as a prototype for
a revised standard library test result API.  Expect this API to change.
Although we will try to preserve compatibility for early adopters, it is
experimental and we might need to break it if it turns out to be unsuitable.

* ``assertRaises`` works properly for exception classes that have custom

* ``ConcurrentTestSuite`` was silently eating exceptions that propagate from
  the method call. Ignoring them is fine in a normal test
  runner, but when they happen in a different thread, the thread that called is not in the stack anymore, and the exceptions are lost. We now
  create a synthetic test recording any such exception.
  (Robert Collins, #1130429)

* Fixed SyntaxError raised in ```` when installing via Python 3.
  (Will Bond, #941958)

* New class ``StreamResult`` which defines the API for the new result type.
  (Robert Collins)

* New support class ``ConcurrentStreamTestSuite`` for convenient construction
  and utilisation of ``StreamToQueue`` objects. (Robert Collins)

* New support class ``CopyStreamResult`` which forwards events onto multiple
  ``StreamResult`` objects (each of which receives all the events).
  (Robert Collins)

* New support class ``StreamSummary`` which summarises a ``StreamResult``
  stream compatibly with ``TestResult`` code. (Robert Collins)

* New support class ``StreamTagger`` which adds or removes tags from
  ``StreamResult`` events. (RobertCollins)

* New support class ``StreamToDict`` which converts a ``StreamResult`` to a
  series of dicts describing a test. Useful for writing trivial stream
  analysers. (Robert Collins)

* New support class ``TestControl`` which permits cancelling an in-progress
  run. (Robert Collins)

* New support class ``StreamFailFast`` which calls a ``TestControl`` instance
  to abort the test run when a failure is detected. (Robert Collins)

* New support class ``ExtendedToStreamDecorator`` which translates both regular
  unittest TestResult API calls and the ExtendedTestResult API which testtools
  has supported into the StreamResult API. ExtendedToStreamDecorator also
  forwards calls made in the StreamResult API, permitting it to be used
  anywhere a StreamResult is used. Key TestResult query methods like
  wasSuccessful and shouldStop are synchronised with the StreamResult API
  calls, but the detailed statistics like the list of errors are not - a
  separate consumer will be created to support that.
  (Robert Collins)

* New support class ``StreamToExtendedDecorator`` which translates
  ``StreamResult`` API calls into ``ExtendedTestResult`` (or any older
  ``TestResult``) calls. This permits using un-migrated result objects with
  new runners / tests. (Robert Collins)

* New support class ``StreamToQueue`` for sending messages to one
  ``StreamResult`` from multiple threads. (Robert Collins)

* New support class ``TimestampingStreamResult`` which adds a timestamp to
  events with no timestamp. (Robert Collins)

* New ``TestCase`` decorator ``DecorateTestCaseResult`` that adapts the
  ``TestResult`` or ``StreamResult`` a case will be run with, for ensuring that
  a particular result object is used even if the runner running the test doesn't
  know to use it. (Robert Collins)

* New test support class ``testtools.testresult.doubles.StreamResult``, which
  captures all the StreamResult events. (Robert Collins)

* ``PlaceHolder`` can now hold tags, and applies them before, and removes them
  after, the test. (Robert Collins)

* ``PlaceHolder`` can now hold timestamps, and applies them before the test and
  then before the outcome. (Robert Collins)

* ``StreamResultRouter`` added. This is useful for demultiplexing - e.g. for
  partitioning analysis of events or sending feedback encapsulated in
  StreamResult events back to their source. (Robert Collins)

* ```` now supports the ``TestRunner`` taking over
  responsibility for formatting the output of ``--list-tests``.
  (Robert Collins)

* The error message for setUp and tearDown upcall errors was broken on Python
  3.4. (Monty Taylor, Robert Collins, #1140688)

* The repr of object() on pypy includes the object id, which was breaking a
  test that accidentally depended on the CPython repr for object().
  (Jonathan Lange)


A simple bug fix, and better error messages when you don't up-call.


* ``testtools.content_type.ContentType`` incorrectly used ',' rather than ';'
  to separate parameters. (Robert Collins)


* ``testtools.compat.unicode_output_stream`` was wrapping a stream encoder
  around ``io.StringIO`` and ``io.TextIOWrapper`` objects, which was incorrect.
  (Robert Collins)

* Report the name of the source file for setUp and tearDown upcall errors.
  (Monty Taylor)


Testtools has moved VCS - is
the new home. Bug tracking is still on Launchpad, and releases are on Pypi.

We made this change to take advantage of the richer ecosystem of tools around
Git, and to lower the barrier for new contributors.


* New ``testtools.testcase.attr`` and ``testtools.testcase.WithAttributes``
  helpers allow marking up test case methods with simple labels. This permits
  filtering tests with more granularity than organising them into modules and
  test classes. (Robert Collins)



* New matcher ``HasLength`` for matching the length of a collection.
  (Robert Collins)

* New matcher ``MatchesPredicateWithParams`` make it still easier to create
  ad hoc matchers. (Robert Collins)

* We have a simpler release process in future - see doc/hacking.rst.
  (Robert Collins)


Brown paper bag fix: failed to document the need for setup to be able to use
extras. Compounded by pip not supporting setup_requires.


* now can generate egg_info even if extras is not available.
  Also lists extras in setup_requires for easy_install.
  (Robert Collins, #1102464)



* ``python -m --load-list`` will now preserve any custom suites
  (such as ``testtools.FixtureSuite`` or ``testresources.OptimisingTestSuite``)
  rather than flattening them.
  (Robert Collins, #827175)

* Testtools now depends on extras, a small library split out from it to contain
  generally useful non-testing facilities. Since extras has been around for a
  couple of testtools releases now, we're making this into a hard dependency of
  testtools. (Robert Collins)

* Testtools now uses setuptools rather than distutils so that we can document
  the extras dependency. (Robert Collins)


* Testtools will no longer override test code registered details called
  'traceback' when reporting caught exceptions from test code.
  (Robert Collins, #812793)

To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 pkgsrc/devel/py-testtools/Makefile
cvs rdiff -u -r1.5 -r1.6 pkgsrc/devel/py-testtools/PLIST \

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Home | Main Index | Thread Index | Old Index