909a6a1eb9
Run tests in a forked process with a set of pipes to communicate keep-alives and overall result. This allows us to detect when e.g. vpp dies mid-API call causing the test to hang waiting for response (which will never come since vpp died). Support setting a (per test case) TIMEOUT make test option to set timeout, with a default timeout of 120 seconds. Example - fail the test suite if any test-case fails to finish within 300s: make TIMEOUT=300 test Change-Id: I0d04f26a7232968f4bf043adf5d5b508f5018717 Signed-off-by: Klement Sekera <ksekera@cisco.com>
33 lines
651 B
Python
33 lines
651 B
Python
#!/usr/bin/env python
|
|
|
|
from __future__ import print_function
|
|
from multiprocessing import Pipe
|
|
from sys import exit
|
|
from hook import VppDiedError
|
|
from framework import VppTestCase, KeepAliveReporter
|
|
|
|
|
|
class SanityTestCase(VppTestCase):
|
|
""" Dummy test case used to check if VPP is able to start """
|
|
pass
|
|
|
|
if __name__ == '__main__':
|
|
rc = 0
|
|
tc = SanityTestCase
|
|
x, y = Pipe()
|
|
reporter = KeepAliveReporter()
|
|
reporter.pipe = y
|
|
try:
|
|
tc.setUpClass()
|
|
except VppDiedError:
|
|
rc = -1
|
|
else:
|
|
try:
|
|
tc.tearDownClass()
|
|
except:
|
|
pass
|
|
x.close()
|
|
y.close()
|
|
|
|
exit(rc)
|