X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest-crypto-perf%2Fdpdk-graph-crypto-perf.py;h=02322d2d7eea049d98043539a8cad787b7e76181;hb=d3319ef93815415d34a3c0dc5d71962d2d3705cd;hp=f4341ee7187a39410a4fed070533377a9f22fc56;hpb=f400e0b82bf1c51bfd0cbcebf763f1a3c3d4d7c1;p=dpdk.git diff --git a/app/test-crypto-perf/dpdk-graph-crypto-perf.py b/app/test-crypto-perf/dpdk-graph-crypto-perf.py index f4341ee718..02322d2d7e 100755 --- a/app/test-crypto-perf/dpdk-graph-crypto-perf.py +++ b/app/test-crypto-perf/dpdk-graph-crypto-perf.py @@ -192,10 +192,23 @@ def run_test(test_cmd, test, grapher, params, verbose): return +def parse_parameters(config_parameters): + """Convert the JSON config to list of strings.""" + params = [] + for (key, val) in config_parameters: + if isinstance(val, bool): + params.append("--" + key if val is True else "") + elif len(key) == 1: + params.append("-" + key) + params.append(val) + else: + params.append("--" + key + "=" + val) + return params + + def run_test_suite(test_cmd, suite_config, verbose): """Parse test cases for the test suite and run each test.""" print("\nRunning Test Suite: " + suite_config['suite']) - default_params = [] graph_path = os.path.join(suite_config['output_path'], GRAPH_DIR, suite_config['suite'], "") grapher = Grapher(suite_config['config_name'], suite_config['suite'], @@ -204,18 +217,10 @@ def run_test_suite(test_cmd, suite_config, verbose): if 'default' not in test_cases: print("Test Suite must contain default case, skipping") return - for (key, val) in test_cases['default']['eal'].items(): - if len(key) == 1: - default_params.append("-" + key + " " + val) - else: - default_params.append("--" + key + "=" + val) + default_params = parse_parameters(test_cases['default']['eal'].items()) default_params.append("--") - for (key, val) in test_cases['default']['app'].items(): - if isinstance(val, bool): - default_params.append("--" + key if val is True else "") - else: - default_params.append("--" + key + "=" + val) + default_params += parse_parameters(test_cases['default']['app'].items()) if 'ptest' not in test_cases['default']['app']: print("Test Suite must contain default ptest value, skipping") @@ -224,13 +229,7 @@ def run_test_suite(test_cmd, suite_config, verbose): for (test, params) in {k: v for (k, v) in test_cases.items() if k != "default"}.items(): - extra_params = [] - for (key, val) in params.items(): - if isinstance(val, bool): - extra_params.append("--" + key if val is True else "") - else: - extra_params.append("--" + key + "=" + val) - + extra_params = parse_parameters(params.items()) run_test(test_cmd, test, grapher, default_params + extra_params, verbose)