diff options
author | Nadrieril | 2024-05-28 13:52:12 +0200 |
---|---|---|
committer | Guillaume Boisseau | 2024-05-30 11:57:40 +0200 |
commit | 14d9ca2ddf5ccb350d3bd87ca14a7b7468398e9c (patch) | |
tree | a9f65a576b18b92d757dd1779025b2fdd839d242 /tests/test_runner/run_test.ml | |
parent | ec03335a473ffdf9371210e8558c691ea69d212d (diff) |
runner: Factor out backend-specific options
Diffstat (limited to 'tests/test_runner/run_test.ml')
-rw-r--r-- | tests/test_runner/run_test.ml | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/tests/test_runner/run_test.ml b/tests/test_runner/run_test.ml index e8dd38bb..c17c17be 100644 --- a/tests/test_runner/run_test.ml +++ b/tests/test_runner/run_test.ml @@ -54,11 +54,12 @@ let run_aeneas (env : runner_env) (case : Input.t) (backend : Backend.t) = let output_file = Filename.remove_extension case.path ^ "." ^ backend_str ^ ".out" in - let subdir = Backend.Map.find backend case.subdirs in + let per_backend = Backend.Map.find backend case.per_backend in + let subdir = per_backend.subdir in + let check_output = per_backend.check_output in + let aeneas_options = per_backend.aeneas_options in + let action = per_backend.action in let dest_dir = concat_path [ env.dest_dir; backend_str; subdir ] in - let aeneas_options = Backend.Map.find backend case.aeneas_options in - let action = Backend.Map.find backend case.actions in - let check_output = Backend.Map.find backend case.check_output in (* Build the command *) let args = @@ -145,16 +146,21 @@ let () = let test_case = { test_case with - aeneas_options = + per_backend = Backend.Map.map - (List.append aeneas_options) - test_case.aeneas_options; + (fun x -> + { + x with + Input.aeneas_options = + List.append aeneas_options x.Input.aeneas_options; + }) + test_case.per_backend; } in let skip_all = List.for_all (fun backend -> - Backend.Map.find backend test_case.actions = Input.Skip) + (Backend.Map.find backend test_case.per_backend).action = Input.Skip) Backend.all in if skip_all then () |