validate: launcher: Always clean all tests at the end

Making sure that if an exception of anything happens we will
properly clean all the tests, or at least try to.
This commit is contained in:
Thibault Saunier 2016-09-02 17:39:50 -03:00
parent 03548cd63d
commit 3ece6a065e
2 changed files with 5 additions and 3 deletions

View File

@ -100,6 +100,7 @@ class Test(Loggable):
self.out = None self.out = None
self.extra_logfiles = [] self.extra_logfiles = []
self.__env_variable = [] self.__env_variable = []
self.kill_subprocess()
def __str__(self): def __str__(self):
string = self.classname string = self.classname
@ -520,6 +521,7 @@ class GstValidateTest(Test):
self.speed = 1.0 self.speed = 1.0
self.actions_infos = [] self.actions_infos = []
self.media_descriptor = media_descriptor self.media_descriptor = media_descriptor
self.server = None
override_path = self.get_override_file(media_descriptor) override_path = self.get_override_file(media_descriptor)
if override_path: if override_path:
@ -546,7 +548,6 @@ class GstValidateTest(Test):
self.scenario = None self.scenario = None
else: else:
self.scenario = scenario self.scenario = scenario
self.server = None
def stop_server(self): def stop_server(self):
if self.server: if self.server:
@ -1431,14 +1432,14 @@ class _TestsLauncher(Loggable):
return True return True
def _clean_tests(self): def clean_tests(self):
for tester in self.testers: for tester in self.testers:
tester.clean_tests() tester.clean_tests()
def run_tests(self): def run_tests(self):
if self.options.forever: if self.options.forever:
while self._run_tests(): while self._run_tests():
self._clean_tests() self.clean_tests()
return False return False
else: else:

View File

@ -567,6 +567,7 @@ Note that all testsuite should be inside python modules, so the directory should
pass pass
finally: finally:
tests_launcher.final_report() tests_launcher.final_report()
tests_launcher.clean_tests()
httpsrv.stop() httpsrv.stop()
vfb_server.stop() vfb_server.stop()
if e is not None: if e is not None: