~bzr/ubuntu/natty/python-testtools/bzr-ppa

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Robert Collins
  • Date: 2009-11-22 03:48:30 UTC
  • mfrom: (16.11.1 upstream)
  • Revision ID: robertc@robertcollins.net-20091122034830-itaynkycem2mchy9
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
testtools NEWS
 
2
==============
 
3
 
 
4
0.9.0
 
5
~~~~~
 
6
 
 
7
This release of testtools is perhaps the most interesting and exciting one
 
8
it's ever had. We've continued in bringing together the best practices of unit
 
9
testing from across a raft of different Python projects, but we've also
 
10
extended our mission to incorporating unit testing concepts from other
 
11
languages and from our own research, led by Robert Collins.
 
12
 
 
13
We now support skipping and expected failures. We'll make sure that you
 
14
up-call setUp and tearDown, avoiding unexpected testing weirdnesses. We're
 
15
now compatible with Python 2.5, 2.6 and 2.7 unittest library.
 
16
 
 
17
All in all, if you are serious about unit testing and want to get the best
 
18
thinking from the whole Python community, you should get this release.
 
19
 
 
20
 
 
21
Improvements
 
22
------------
 
23
 
 
24
* A new TestResult API has been added for attaching details to test outcomes.
 
25
  This API is currently experimental, but is being prepared with the intent
 
26
  of becoming an upstream Python API. For more details see pydoc
 
27
  testtools.TestResult and the TestCase addDetail / getDetails methods.
 
28
 
 
29
* assertThat has been added to TestCase. This new assertion supports
 
30
  a hamcrest-inspired matching protocol. See pydoc testtools.Matcher for
 
31
  details about writing matchers, and testtools.matchers for the included
 
32
  matchers. See http://code.google.com/p/hamcrest/.
 
33
 
 
34
* Compatible with Python 2.6 and Python 2.7
 
35
 
 
36
* Failing to upcall in setUp or tearDown will now cause a test failure.
 
37
  While the base methods do nothing, failing to upcall is usually a problem
 
38
  in deeper hierarchies, and checking that the root method is called is a
 
39
  simple way to catch this common bug.
 
40
 
 
41
* New TestResult decorator ExtendedToOriginalDecorator which handles
 
42
  downgrading extended API calls like addSkip to older result objects that
 
43
  do not support them. This is used internally to make testtools simpler but
 
44
  can also be used to simplify other code built on or for use with testtools.
 
45
 
 
46
* New TextTestResult supporting the extended APIs that testtools provides.
 
47
 
 
48
* Nose will no longer find 'runTest' tests in classes derived from
 
49
   testtools.testcase.TestCase (bug #312257).
 
50
 
 
51
* Supports the Python 2.7/3.1 addUnexpectedSuccess and addExpectedFailure
 
52
  TestResult methods, with a support function 'knownFailure' to let tests
 
53
  trigger these outcomes.
 
54
 
 
55
* When using the skip feature with TestResult objects that do not support it
 
56
  a test success will now be reported. Previously an error was reported but
 
57
  production experience has shown that this is too disruptive for projects that
 
58
  are using skips: they cannot get a clean run on down-level result objects.