Reputation: 34680
is it possible to show the assertion values that failed? It shows the traceback and what kind of exception was throw but it would more practical to know which values failed.
Example:
assert result.file == file
AssertionError
Upvotes: 15
Views: 4750
Reputation: 12960
Another possibility: define your own function that does the trick:
def assert_eq(obt, exp):
assert obt==exp, "\n*Expected:\n%s\n*Obtained:\n%s" % (exp, obt)
You can call it instead of assert
:
assert_eq ( self.data['SQ'].code, "SQ" )
And this returns this nice error:
Upvotes: 1
Reputation: 6942
You should run nosetests -d this will display the values of the objects that fail the compare in assert.
Upvotes: 24
Reputation: 22248
assert result.file == file, "%s != %s" % (result.file, file,)
That's why ugly self.assert<Foo>
methods were introduced in unittest.TestCase
instead of nice and short asserts: self.assert<Foo>
methods know how to display failure messages.
By the way, I thought that nose do some black magic so in simple cases
assert a == b
should show meaningful error message.
Upvotes: 6