From 25a37b2048281c64719bd6ad67860f65f6c31546 Mon Sep 17 00:00:00 2001 From: rexlee8776 Date: Wed, 5 Jul 2017 02:50:06 +0000 Subject: move flatten dict key to common utils So it can easily be used by other testcase to unify result JIRA: YARDSTICK-702 Change-Id: Id4fde38a9a0c2a87a6c870bdb7b0c8f3a3b371ac Signed-off-by: rexlee8776 --- yardstick/benchmark/scenarios/compute/lmbench.py | 13 ++++++++----- yardstick/benchmark/scenarios/compute/ramspeed.py | 6 ++++-- 2 files changed, 12 insertions(+), 7 deletions(-) (limited to 'yardstick/benchmark/scenarios/compute') diff --git a/yardstick/benchmark/scenarios/compute/lmbench.py b/yardstick/benchmark/scenarios/compute/lmbench.py index c99fc988d..801f7fa80 100644 --- a/yardstick/benchmark/scenarios/compute/lmbench.py +++ b/yardstick/benchmark/scenarios/compute/lmbench.py @@ -15,6 +15,7 @@ import pkg_resources from oslo_serialization import jsonutils import yardstick.ssh as ssh +from yardstick.common import utils from yardstick.benchmark.scenarios import base LOG = logging.getLogger(__name__) @@ -127,30 +128,32 @@ class Lmbench(base.Scenario): if status: raise RuntimeError(stderr) + lmbench_result = {} if test_type == 'latency': - result.update( + lmbench_result.update( {"latencies": jsonutils.loads(stdout)}) else: - result.update(jsonutils.loads(stdout)) + lmbench_result.update(jsonutils.loads(stdout)) + result.update(utils.flatten_dict_key(lmbench_result)) if "sla" in self.scenario_cfg: sla_error = "" if test_type == 'latency': sla_max_latency = int(self.scenario_cfg['sla']['max_latency']) - for t_latency in result["latencies"]: + for t_latency in lmbench_result["latencies"]: latency = t_latency['latency'] if latency > sla_max_latency: sla_error += "latency %f > sla:max_latency(%f); " \ % (latency, sla_max_latency) elif test_type == 'bandwidth': sla_min_bw = int(self.scenario_cfg['sla']['min_bandwidth']) - bw = result["bandwidth(MBps)"] + bw = lmbench_result["bandwidth(MBps)"] if bw < sla_min_bw: sla_error += "bandwidth %f < " \ "sla:min_bandwidth(%f)" % (bw, sla_min_bw) elif test_type == 'latency_for_cache': sla_latency = float(self.scenario_cfg['sla']['max_latency']) - cache_latency = float(result['L1cache']) + cache_latency = float(lmbench_result['L1cache']) if sla_latency < cache_latency: sla_error += "latency %f > sla:max_latency(%f); " \ % (cache_latency, sla_latency) diff --git a/yardstick/benchmark/scenarios/compute/ramspeed.py b/yardstick/benchmark/scenarios/compute/ramspeed.py index 850ee5934..ca64935dd 100644 --- a/yardstick/benchmark/scenarios/compute/ramspeed.py +++ b/yardstick/benchmark/scenarios/compute/ramspeed.py @@ -14,6 +14,7 @@ import pkg_resources from oslo_serialization import jsonutils import yardstick.ssh as ssh +from yardstick.common import utils from yardstick.benchmark.scenarios import base LOG = logging.getLogger(__name__) @@ -128,12 +129,13 @@ class Ramspeed(base.Scenario): if status: raise RuntimeError(stderr) - result.update(jsonutils.loads(stdout)) + ramspeed_result = jsonutils.loads(stdout) + result.update(utils.flatten_dict_key(ramspeed_result)) if "sla" in self.scenario_cfg: sla_error = "" sla_min_bw = int(self.scenario_cfg['sla']['min_bandwidth']) - for i in result["Result"]: + for i in ramspeed_result["Result"]: bw = i["Bandwidth(MBps)"] if bw < sla_min_bw: sla_error += "Bandwidth %f < " \ -- cgit 1.2.3-korg