From 74217df2460f3577b7802a61d1b6f5d68d05ad14 Mon Sep 17 00:00:00 2001 From: Vasileios Karakasis Date: Fri, 18 Jul 2025 18:28:00 +0300 Subject: [PATCH] Treat `=` properly when parameterizing tests with `--parameterize` --- reframe/frontend/cli.py | 2 +- unittests/test_cli.py | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/reframe/frontend/cli.py b/reframe/frontend/cli.py index d69259bf5..62770390a 100644 --- a/reframe/frontend/cli.py +++ b/reframe/frontend/cli.py @@ -1365,7 +1365,7 @@ def _case_failed(t): params = {} for param_spec in options.parameterize: try: - var, values_spec = param_spec.split('=') + var, values_spec = param_spec.split('=', maxsplit=1) except ValueError: raise errors.CommandLineError( f'invalid parameter spec: {param_spec}' diff --git a/unittests/test_cli.py b/unittests/test_cli.py index 50a8904df..a6cc007e0 100644 --- a/unittests/test_cli.py +++ b/unittests/test_cli.py @@ -1061,16 +1061,16 @@ def test_repeat_negative(run_reframe): def test_parameterize_tests(run_reframe): returncode, stdout, _ = run_reframe( - more_options=['-P', 'num_tasks=2,4,8', '-n', '^HelloTest'], + more_options=['-P', 'descr=msg=hello1,msg=hello2', + '-n', '^HelloTest'], checkpath=['unittests/resources/checks/hellocheck.py'], action='describe' ) assert returncode == 0 - test_descr = json.loads(stdout) - print(json.dumps(test_descr, indent=2)) - num_tasks = {t['num_tasks'] for t in test_descr} - assert num_tasks == {2, 4, 8} + test_json = json.loads(stdout) + descr = [t['descr'] for t in test_json] + assert descr == ['msg=hello1', 'msg=hello2'] def test_parameterize_tests_invalid_params(run_reframe):