From 399c9f82c35dc44d16727422c9f999907270c47d Mon Sep 17 00:00:00 2001 From: Sergei Trofimov Date: Tue, 21 Apr 2015 13:19:21 +0100 Subject: [PATCH] telemetry: handle scalar values correctly. The result regex in telemetry workload has been updated to capture lines reproting single value results. --- wlauto/workloads/telemetry/__init__.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/wlauto/workloads/telemetry/__init__.py b/wlauto/workloads/telemetry/__init__.py index 5d417320..32ff1156 100644 --- a/wlauto/workloads/telemetry/__init__.py +++ b/wlauto/workloads/telemetry/__init__.py @@ -11,7 +11,9 @@ from wlauto.utils.misc import check_output, get_null, get_meansd from wlauto.utils.types import numeric, identifier -RESULT_REGEX = re.compile(r'RESULT (\w+): ([^=]+)\s*=\s*\[([^\]]+)\]\s*(\S+)') +RESULT_REGEX = re.compile(r'RESULT ([^:]+): ([^=]+)\s*=\s*' # preamble and test/metric name + r'(\[([^\]]+)\]|(\S+))' # value + r'\s*(\S+)') # units class Telemetry(Workload): @@ -195,8 +197,11 @@ def parse_telemetry_results(filepath): result = TelemetryResult() result.kind = match.group(1) result.url = match.group(2) - result.values = map(numeric, match.group(3).split(',')) - result.units = match.group(4) + if match.group(4): + result.values = map(numeric, match.group(4).split(',')) + else: + result.values = [numeric(match.group(5))] + result.units = match.group(6) results.append(result) return results