- Fix detection of failing
setUp()
methods so reporting is correct, instead of crashing. Thanks to@bendikro
! - Fix issue with calling
strip()
on test descriptions when the test is generator-driven. Credit:@AFriemann
.
- Python 2 oriented Unicode fixes.
- A couple of minor packaging-related updates, including marking wheel archives
as
universal
.
- Added
assert_contains
andassert_not_contains
test assertions.
- Fixed a bug re: inner nested classes accessing attributes defined in outer
classes/scopes (symptom: an
AttributeError
aboutsetup
).
- Skip (instead of blowing up on) modules lacking a
__file__
attribute (such as Python 3's builtin_io
module) during test discovery. - Handle a map expression more appropriately under Python 3 so
--tests=xxx
actually works instead of silently selecting no tests.
- Add
--timing-threshold
option for configuring the threshold of--with-timing
.
-
Calculate runtime of tests and add display of same (non-colorized, to stand out better from the colorized test names themselves). This uses the 'status' field of test display methods, which didn't seem to be used much previously.
Use the new
--with-timing
flag to enable this feature.
- Bump to 1.0 because it's been out for some time & I can't afford major backwards incompat changes because of that - so being pre-1.0 is silly.
- Don't accidentally discard return values of functions wrapped with
@trap
. - Offer an improved version of
nose.tools.eq_
which prints bothstr()
andrepr()
style output of the compared strings.
- Use
__mro__
instead ofmro()
in hopes of appeasing PyPy 2.4.
- Update license file (which had been initialized as BSD) to be consistent with the README and packaging metadata (which said MIT). Bluh. Thanks to Eduardo Téllez for the catch.
- Fix a bug re: using
@trap
under Python 3
- Update Nose dependency links in
setup.py
- Fix #30: allow access to outer/parent classes within nested classes (when using classes as a visual nesting mechanism).
- Also document the class nesting mechanism (despite it being around for quite some time...)
- Python 3 support!
- Add
@trap
decorator to allow trapping stdout/stderr for certain tests. - Strip whitespace from docstrings used as test names, to avoid clunky looking output.
- Add number of skipped tests to successful summary output. Previously, number of skipped tests was only printed when other failures occurred.
- Add
@hide
decorator to explicitly mark functions as not being tests, thanks to Maciej Konieczny for the initial work. - Auto-hide
setup
andteardown
methods/functions so they aren't run as / shown as tests themselves. Thanks again to Maciej for the initial pull request. - Refactor
spec
's relaxed test discovery so it can be invoked as its own Nose plugin/option (thoughspec
the program still has its own use and still exists.) Thanks to Marc Abramowitz (and thanks to him also for some minor internal refactorings & project support tweaks.)
- Use
nose.core.main
instead ofnose.core.run
sospec
exits with nonzero return values upon test failure.
- Make sure
spec
does not blow up when notests/
directory exists. Fixes #14. Thanks to Janne Härkönen for the patch. - Filter out
.pyc
files when selecting tests. Fixes #15; thanks again to Janne. - Actually skip leading-underscore files; implementation did not match docs.
- Add support for nested inner classes as recursive contexts.
- Add command-line option to disable our automatic toggle of the built-in
--detailed-errors
flag. - Tweak color scheme so purples became reds.
- Remove old Nose-style SKIPPED/FAILED/etc suffixes when showing spec format.
- Re-integrate support for individual test module targeting (
--tests=<path>
).
- Print skipped test count in summary. (#5)
- Only print
<type>=<count>
error counts in summary for nonzero counts (i.e. never print e.g.(failures=0, ...)
.) - Don't use custom test selection in
spec
tool if user passes in common Nose selection options such as--where=
or--tests=
. - Refactor of internal colorization functions. (#7)
- Filter out trailing underscores from class names when printing spec output
(so e.g.
class MyClass_
shows up asMyClass
and notMyClass_
.) (#8)
- PEP8 overhaul (I never audited the original source for PEP8 compliancy :() courtesy of Douglas Soares de Andrade. (#3)
- Docstrings-as-test-identifiers now
strip()
'd, also thanks to Douglas. - Implement Rudolf-inspired traceback and summary colorization. (#1)
- Switch from single module to a package.
- Add 'spec' CLI runner tool.
- Import original Pinocchio/Spec codebase.
- Trim down to just 'spec' plugin.
- Nose 1.x fixes.
- Python 2.7 fixes.
- Packaging, docs, internal tests all overhauled.
- Set colorized output as the default behavior.