Skip to content

Commit 3c2b0de

Browse files
committed
add a check for duplicate configurations in different parameter files
1 parent d19fdef commit 3c2b0de

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

benchmarks/linear-elastic-plate-with-hole/FEniCS/Snakefile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,13 @@ def get_configuration(file):
2424
# Create a dictionary of configurations (key is the name of the parameter file)
2525
# configurations: {Path("parameters_1.json"): "1", ...}
2626
configurations = {file: get_configuration(file) for file in files if file.is_file()}
27+
28+
# Check for duplicate configuration values
29+
config_values = list(configurations.values())
30+
duplicates = set([x for x in config_values if config_values.count(x) > 1])
31+
if duplicates:
32+
raise ValueError(f"Duplicate configuration values found in parameter files: {', '.join(duplicates)}")
33+
2734
# Reverse mapping for easy lookup by configuration name
2835
configuration_to_parameter_file = {v: str(k) for k, v in configurations.items()}
2936

@@ -35,6 +42,9 @@ rule all:
3542
input:
3643
expand(f"{result_dir}/{{tool}}/summary.json", tool=tools),
3744

45+
46+
47+
3848
rule create_mesh:
3949
input:
4050
script = "create_mesh.py",

environment_benchmarks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ dependencies:
1111
- conda
1212
- pip
1313
- pip:
14-
- "--editable=git+https://github.com/M-Jafarkhani/snakemake-report-plugin-metadata4ing.git#egg=snakemake-report-plugin-metadata4ing"
14+
- "--editable=git+https://github.com/izus-fokus/snakemake-report-plugin-metadata4ing.git#egg=snakemake-report-plugin-metadata4ing"

0 commit comments

Comments
 (0)