From 925ff7542b69bb5516b6eb5b4488da23124a0cbc Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Sat, 26 Apr 2014 08:11:20 +0200 Subject: [PATCH] validate:launcher: Always put gst-validate result as stderr in reports This way jenkins will always keep the information in its database even if the test passes --- validate/gst/validate/gst-validate-scenario.c | 3 ++- validate/tools/launcher/baseclasses.py | 7 ++++--- validate/tools/launcher/reporters.py | 15 ++++++++++----- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/validate/gst/validate/gst-validate-scenario.c b/validate/gst/validate/gst-validate-scenario.c index b658c918a1..a68749ba78 100644 --- a/validate/gst/validate/gst-validate-scenario.c +++ b/validate/gst/validate/gst-validate-scenario.c @@ -1504,7 +1504,8 @@ init_scenarios (void) "Action to wait during 'duration' seconds", FALSE); gst_validate_add_action_type ("dot-pipeline", _execute_dot_pipeline, NULL, "Action to wait dot the pipeline (the 'name' property will be included in the" - " dot filename. Also the GST_DEBUG_DUMP_DOT_DIR env variable needs to be set", FALSE); + " dot filename. Also the GST_DEBUG_DUMP_DOT_DIR env variable needs to be set", + FALSE); gst_validate_add_action_type ("set-feature-rank", _set_rank, NULL, "Allows you to change the ranking of a particular plugin feature", TRUE); } diff --git a/validate/tools/launcher/baseclasses.py b/validate/tools/launcher/baseclasses.py index fad536e442..81820b5df4 100644 --- a/validate/tools/launcher/baseclasses.py +++ b/validate/tools/launcher/baseclasses.py @@ -90,7 +90,7 @@ class Test(Loggable): value = f.read() f.close() - return value + return value, sys.stdout def get_classname(self): @@ -287,12 +287,13 @@ class GstValidateTest(Test): self.add_arguments("--set-scenario", self.scenario.name) def get_extra_log_content(self, extralog): - value = Test.get_extra_log_content(self, extralog) + value, stdo = Test.get_extra_log_content(self, extralog) if extralog == self.validatelogs: value = re.sub("\r", "", value) + stdo = sys.stderr - return value + return value, stdo def get_validate_criticals_errors(self): ret = "[" diff --git a/validate/tools/launcher/reporters.py b/validate/tools/launcher/reporters.py index 6938246bf6..8ba05dbd26 100644 --- a/validate/tools/launcher/reporters.py +++ b/validate/tools/launcher/reporters.py @@ -21,6 +21,7 @@ import os import re +import sys import codecs from loggable import Loggable from xml.sax import saxutils @@ -139,13 +140,17 @@ class XunitReporter(Reporter): if value: captured += '\n" for extralog in self._current_test.extra_logfiles: - captured += "\n\n===== %s =====\n\n" % escape_cdata(os.path.basename(extralog)) - value = self._current_test.get_extra_log_content(extralog) - captured += escape_cdata(value) - - captured += "]]>" + value, stdo = self._current_test.get_extra_log_content(extralog) + if stdo == sys.stdout: + out = 'system-out' + else: + out = 'system-err' + captured += '<%s>\n' % (out, + "\n\n===== %s =====\n\n" % escape_cdata(os.path.basename(extralog)), + escape_cdata(value), out) return captured