diff options
author | Paul Vinciguerra <pvinci@vinciconsulting.com> | 2019-06-19 10:29:24 -0400 |
---|---|---|
committer | Andrew Yourtchenko <ayourtch@gmail.com> | 2019-06-25 11:26:08 +0000 |
commit | 5dd6a7b29f23b89aaad4fdaba0579ca5b37d7929 (patch) | |
tree | 022629af8673c454165d733a1f00b28a9f516294 /test/framework.py | |
parent | 08d82e98cdf75c810659fcb347e89198cf7b0bc5 (diff) |
tests: if vpp is dead, specify the test name in the output
'Exception: VPP is dead when setting up the test'
is more helpful with the test info.
Type: test
Change-Id: I6a262fdcf2ecb33aae17bef3d19745053a0bade8
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Diffstat (limited to 'test/framework.py')
-rw-r--r-- | test/framework.py | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/test/framework.py b/test/framework.py index 00fee86e9b0..79dfe1ae866 100644 --- a/test/framework.py +++ b/test/framework.py @@ -76,15 +76,24 @@ class VppDiedError(Exception): signals_by_value = {v: k for k, v in signal.__dict__.items() if k.startswith('SIG') and not k.startswith('SIG_')} - def __init__(self, rv=None): + def __init__(self, rv=None, testcase=None, method_name=None): self.rv = rv self.signal_name = None + self.testcase = testcase + self.method_name = method_name + try: self.signal_name = VppDiedError.signals_by_value[-rv] except KeyError: pass - msg = "VPP subprocess died unexpectedly with return code: %d%s." % ( + if testcase is None and method_name is None: + in_msg = '' + else: + in_msg = 'running %s.%s ' % (testcase, method_name) + + msg = "VPP subprocess died %sunexpectedly with return code: %d%s." % ( + in_msg, self.rv, ' [%s]' % self.signal_name if self.signal_name is not None else '') @@ -672,7 +681,10 @@ class VppTestCase(unittest.TestCase): super(VppTestCase, self).setUp() self.reporter.send_keep_alive(self) if self.vpp_dead: - raise Exception("VPP is dead when setting up the test") + raise VppDiedError(self.__class__.__name__, self._testMethodName, + "VPP is dead when setting up the test " + "(%s.%s)." % (self.__class__.__name__, + self._testMethodName)) self.sleep(.1, "during setUp") self.vpp_stdout_deque.append( "--- test setUp() for %s.%s(%s) starts here ---\n" % |