------------------------------------------------------------------- Sun Dec 11 20:52:09 UTC 2011 - jfunk@funktronics.ca - Update to 0.9.12: - Changes: * ``AfterPreproccessing`` renamed to ``AfterPreprocessing``, which is a more correct spelling. Old name preserved for backwards compatibility, but is now deprecated. Please stop using it. (Jonathan Lange, #813460) * ``assertThat`` raises ``MismatchError`` instead of ``TestCase.failureException``. ``MismatchError`` is a subclass of ``AssertionError``, so in most cases this change will not matter. However, if ``self.failureException`` has been set to a non-default value, then mismatches will become test errors rather than test failures. * ``gather_details`` takes two dicts, rather than two detailed objects. (Jonathan Lange, #801027) * ``MatchesRegex`` mismatch now says " does not match //" rather than " did not match ". The regular expression contains fewer backslashes too. (Jonathan Lange, #818079) * Tests that run with ``AsynchronousDeferredRunTest`` now have the ``reactor`` attribute set to the running reactor. (Jonathan Lange, #720749) - Improvements: * All public matchers are now in ``testtools.matchers.__all__``. (Jonathan Lange, #784859) * ``assertThat`` can actually display mismatches and matchers that contain extended unicode characters. (Jonathan Lange, Martin [gz], #804127) * ``assertThat`` output is much less verbose, displaying only what the mismatch tells us to display. Old-style verbose output can be had by passing ``verbose=True`` to assertThat. (Jonathan Lange, #675323, #593190) * ``assertThat`` accepts a message which will be used to annotate the matcher. This can be given as a third parameter or as a keyword parameter. (Robert Collins) * Automated the Launchpad part of the release process. (Jonathan Lange, #623486) * Correctly display non-ASCII unicode output on terminals that claim to have a unicode encoding. (Martin [gz], #804122) * ``DocTestMatches`` correctly handles unicode output from examples, rather than raising an error. (Martin [gz], #764170) * ``ErrorHolder`` and ``PlaceHolder`` added to docs. (Jonathan Lange, #816597) * ``ExpectedException`` now matches any exception of the given type by default, and also allows specifying a ``Matcher`` rather than a mere regular expression. (Jonathan Lange, #791889) * ``FixtureSuite`` added, allows test suites to run with a given fixture. (Jonathan Lange) * Hide testtools's own stack frames when displaying tracebacks, making it easier for test authors to focus on their errors. (Jonathan Lange, Martin [gz], #788974) * Less boilerplate displayed in test failures and errors. (Jonathan Lange, #660852) * ``MatchesException`` now allows you to match exceptions against any matcher, rather than just regular expressions. (Jonathan Lange, #791889) * ``MatchesException`` now permits a tuple of types rather than a single type (when using the type matching mode). (Robert Collins) * ``MatchesStructure.byEquality`` added to make the common case of matching many attributes by equality much easier. ``MatchesStructure.byMatcher`` added in case folk want to match by things other than equality. (Jonathan Lange) * New convenience assertions, ``assertIsNone`` and ``assertIsNotNone``. (Christian Kampka) * New matchers: * ``AllMatch`` matches many values against a single matcher. (Jonathan Lange, #615108) * ``Contains``. (Robert Collins) * ``GreaterThan``. (Christian Kampka) * New helper, ``safe_hasattr`` added. (Jonathan Lange) * ``reraise`` added to ``testtools.compat``. (Jonathan Lange) - 0.9.11: - Changes * ``TestCase`` now uses super to call base ``unittest.TestCase`` constructor, ``setUp`` and ``tearDown``. (Tim Cole, #771508) * If, when calling ``useFixture`` an error occurs during fixture set up, we still attempt to gather details from the fixture. (Gavin Panella) - Improvements * Additional compat helper for ``BytesIO`` for libraries that build on testtools and are working on Python 3 porting. (Robert Collins) * Corrected documentation for ``MatchesStructure`` in the test authors document. (Jonathan Lange) * ``LessThan`` error message now says something that is logically correct. (Gavin Panella, #762008) * Multiple details from a single fixture are now kept separate, rather than being mooshed together. (Gavin Panella, #788182) * Python 3 support now back in action. (Martin [gz], #688729) * ``try_import`` and ``try_imports`` have a callback that is called whenever they fail to import a module. (Martin Pool) ------------------------------------------------------------------- Sat Apr 16 18:51:17 UTC 2011 - jfunk@funktronics.ca - Initial release