1 # Copyright (c) 2016, Matt Layman
5 """The adapter processes a TAP test line and updates a unittest result.
7 It is an alternative to TestCase to collect TAP results.
9 failureException
= AssertionError
11 def __init__(self
, filename
, line
):
12 self
._filename
= filename
15 def shortDescription(self
):
16 """Get the short description for verbeose results."""
17 return self
._line
.description
19 def __call__(self
, result
):
20 """Update test result with the lines in the TAP file.
22 Provide the interface that TestCase provides to a suite or runner.
24 result
.startTest(self
)
27 result
.addSkip(None, self
._line
.directive
.reason
)
32 result
.addUnexpectedSuccess(self
)
34 result
.addExpectedFailure(self
, (Exception, Exception(), None))
38 result
.addSuccess(self
)
40 self
.addFailure(result
)
42 def addFailure(self
, result
):
43 """Add a failure to the result."""
44 result
.addFailure(self
, (Exception, Exception(), None))
45 # Since TAP will not provide assertion data, clean up the assertion
46 # section so it is not so spaced out.
47 test
, err
= result
.failures
[-1]
48 result
.failures
[-1] = (test
, '')
51 return '<file={filename}>'.format(filename
=self
._filename
)
This page took 0.036565 seconds and 4 git commands to generate.