From 91afb1a64bbf60fe7d3ddc00d2f8ef3dbd4f5e66 Mon Sep 17 00:00:00 2001
From: ahmedk <karim.ahmed@xfel.eu>
Date: Mon, 24 Jan 2022 14:46:50 +0100
Subject: [PATCH] common out-folder and reference folder for tests

---
 tests/callab_tests.yaml      | 619 ++++++++++++++++-------------------
 tests/test_pre_deployment.py |  41 ++-
 2 files changed, 314 insertions(+), 346 deletions(-)

diff --git a/tests/callab_tests.yaml b/tests/callab_tests.yaml
index b4e074199..259906e2f 100644
--- a/tests/callab_tests.yaml
+++ b/tests/callab_tests.yaml
@@ -1,362 +1,319 @@
-# "Test-SPB_DET_AGIPD1M-1-CORRECT-FIXED":
-#     "det_type": "AGIPD"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/correct_fixed"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
-#         "run": "95"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "SPB_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "SPB_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/correct_fixed"
+"SPB_DET_AGIPD1M-1-CORRECT-FIXED":
+    "det_type": "AGIPD"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
+        "run": "95"
+        "karabo-id-control": "SPB_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "SPB_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SPB_DET_AGIPD1M-1-DARK-FIXED":
-#     "det_type": "AGIPD"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/dark_fixed"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
-#         "run-high": "91"
-#         "run-med": "92"
-#         "run-low": "93"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "SPB_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "SPB_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/dark_fixed"
+"SPB_DET_AGIPD1M-1-DARK-FIXED":
+    "det_type": "AGIPD"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
+        "run-high": "91"
+        "run-med": "92"
+        "run-low": "93"
+        "karabo-id-control": "SPB_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "SPB_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SPB_DET_AGIPD1M-1-CORRECT-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/correct_adaptive"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
-#         "run": "262"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "SPB_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "SPB_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/correct_adaptive"
+"SPB_DET_AGIPD1M-1-CORRECT-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
+        "run": "262"
+        "karabo-id-control": "SPB_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "SPB_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SPB_DET_AGIPD1M-1-DARK-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/dark_adaptive"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
-#         "run-high": "216"
-#         "run-med": "217"
-#         "run-low": "218"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "SPB_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "SPB_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_DET_AGIPD1M-1/dark_adaptive"
+"SPB_DET_AGIPD1M-1-DARK-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202131/p900215/raw"
+        "run-high": "216"
+        "run-med": "217"
+        "run-low": "218"
+        "karabo-id-control": "SPB_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "SPB_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-MID_DET_AGIPD1M-1-CORRECT-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/MID_DET_AGIPD1M-1/correct_fixed"
-#         "in-folder": "/gpfs/exfel/exp/MID/202121/p002929/raw"
-#         "run": "21"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "MID_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "MID_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/MID_DET_AGIPD1M-1/correct_fixed"
+"MID_DET_AGIPD1M-1-CORRECT-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/MID/202121/p002929/raw"
+        "run": "21"
+        "karabo-id-control": "MID_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "MID_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-MID_DET_AGIPD1M-1-DARK-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/MID_DET_AGIPD1M-1/dark_fixed"
-#         "in-folder": "/gpfs/exfel/exp/MID/202121/p002929/raw"
-#         "run-high": "4"
-#         "run-med": "5"
-#         "run-low": "6"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "MID_IRU_AGIPD1M1"
-#         "karabo-da-control": "AGIPD1MCTRL00"
-#         "karabo-id": "MID_DET_AGIPD1M-1"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/MID_DET_AGIPD1M-1/dark_fixed"
+"MID_DET_AGIPD1M-1-DARK-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/MID/202121/p002929/raw"
+        "run-high": "4"
+        "run-med": "5"
+        "run-low": "6"
+        "karabo-id-control": "MID_IRU_AGIPD1M1"
+        "karabo-da-control": "AGIPD1MCTRL00"
+        "karabo-id": "MID_DET_AGIPD1M-1"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-HED_DET_AGIPD500K2G-CORRECT-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_DET_AGIPD500K2G/correct_fixed"
-#         "in-folder": "/gpfs/exfel/exp/HED/202131/p900228/raw"
-#         "run": "29"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "HED_EXP_AGIPD500K2G"
-#         "karabo-da-control": "AGIPD500K2G00"
-#         "karabo-id": "HED_DET_AGIPD500K2G"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_DET_AGIPD500K2G/correct_fixed"
+"HED_DET_AGIPD500K2G-CORRECT-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/HED/202131/p900228/raw"
+        "run": "29"
+        "karabo-id-control": "HED_EXP_AGIPD500K2G"
+        "karabo-da-control": "AGIPD500K2G00"
+        "karabo-id": "HED_DET_AGIPD500K2G"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-HED_DET_AGIPD500K2G-DARK-ADAPTIVE":
-#     "det_type": "AGIPD"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_DET_AGIPD500K2G/dark_fixed"
-#         "in-folder": "/gpfs/exfel/exp/HED/202131/p900228/raw"
-#         "run-high": "25"
-#         "run-med": "26"
-#         "run-low": "27"
-#         "report-to": "agipd_pytest_report"
-#         "karabo-id-control": "HED_EXP_AGIPD500K2G"
-#         "karabo-da-control": "AGIPD500K2G00"
-#         "karabo-id": "HED_DET_AGIPD500K2G"
-#         "slurm-mem": "750"
-#         #"modules": "0,1,2,3"
-#         "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_DET_AGIPD500K2G/dark_fixed"
+"HED_DET_AGIPD500K2G-DARK-ADAPTIVE":
+    "det_type": "AGIPD"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/HED/202131/p900228/raw"
+        "run-high": "25"
+        "run-med": "26"
+        "run-low": "27"
+        "karabo-id-control": "HED_EXP_AGIPD500K2G"
+        "karabo-da-control": "AGIPD500K2G00"
+        "karabo-id": "HED_DET_AGIPD500K2G"
+        "slurm-mem": "750"
+        #"modules": "0,1,2,3"
+        "h5path-ctrl": "/CONTROL/{}/MDL/FPGA_COMP"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-FXE_XAD_JF500K-DARK-SINGLE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF500K/dark_single_r47"
-#         "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
-#         "run-high": "47"
-#         "run-med": "48"
-#         "run-low": "49"
-#         "report-to": "FXE_XAD_JF500K_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "FXE_XAD_JF500K"
-#         "karabo-da": "JNGFR03"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF500K/dark_single_r47"
+"FXE_XAD_JF500K-DARK-SINGLE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
+        "run-high": "47"
+        "run-med": "48"
+        "run-low": "49"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "FXE_XAD_JF500K"
+        "karabo-da": "JNGFR03"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-FXE_XAD_JF500K-CORRECT-SINGLE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF500K/correct_single_r52"
-#         "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
-#         "run": "52"
-#         "report-to": "FXE_XAD_JF500K_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "FXE_XAD_JF500K"
-#         "karabo-da": "JNGFR03"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF500K/correct_single_r52"
+"FXE_XAD_JF500K-CORRECT-SINGLE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
+        "run": "52"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "FXE_XAD_JF500K"
+        "karabo-da": "JNGFR03"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-FXE_XAD_JF1M-DARK-BURST":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/dark_burst_r108"
-#         "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
-#         "run-high": "108"
-#         "run-med": "109"
-#         "run-low": "110"
-#         "report-to": "FXE_XAD_JF1M_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "FXE_XAD_JF1M"
-#         "karabo-da":
-#             - "JNGFR01"
-#             - "JNGFR02"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/dark_burst_r108"
+"FXE_XAD_JF1M-DARK-BURST":
+    "det_type": "JUNGFRAU"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
+        "run-high": "108"
+        "run-med": "109"
+        "run-low": "110"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "FXE_XAD_JF1M"
+        "karabo-da":
+            - "JNGFR01"
+            - "JNGFR02"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-FXE_XAD_JF1M-CORRECT-BURST":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/correct_burst_r106"
-#         "in-folder": "/gpfs/exfel/exp/FXE/202131/p900226/raw"
-#         "run": "106"
-#         "report-to": "FXE_XAD_JF1M_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "FXE_XAD_JF1M"
-#         "karabo-da":
-#             - "JNGFR01"
-#             - "JNGFR02"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/correct_burst_r106"
+"FXE_XAD_JF1M-CORRECT-BURST":
+    "det_type": "JUNGFRAU"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/FXE/202131/p900226/raw"
+        "run": "106"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "FXE_XAD_JF1M"
+        "karabo-da":
+            - "JNGFR01"
+            - "JNGFR02"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-FXE_XAD_JF1M-DARK-SINGLE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/dark_single_r47"
-#         "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
-#         "run-high": "47"
-#         "run-med": "48"
-#         "run-low": "49"
-#         "report-to": "FXE_XAD_JF1M_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "FXE_XAD_JF1M"
-#         "karabo-da":
-#             - "JNGFR01"
-#             - "JNGFR02"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/FXE_XAD_JF1M/dark_single_r47"
+"FXE_XAD_JF1M-DARK-SINGLE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/FXE/202101/p002478/raw/"
+        "run-high": "47"
+        "run-med": "48"
+        "run-low": "49"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "FXE_XAD_JF1M"
+        "karabo-da":
+            - "JNGFR01"
+            - "JNGFR02"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SPB_IRDA_JF4M-CORRECT-SINGLE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_IRDA_JF4M/correct_r91"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202130/p900204/raw"
-#         "run": "91"
-#         "report-to": "SPB_IRDA_JF4M_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "SPB_IRDA_JF4M"
-#         "karabo-da":
-#             - "JNGFR01"
-#             - "JNGFR02"
-#             - "JNGFR03"
-#             - "JNGFR04"
-#             - "JNGFR05"
-#             - "JNGFR06"
-#             - "JNGFR07"
-#             - "JNGFR08"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_IRDA_JF4M/correct_r91"
+"SPB_IRDA_JF4M-CORRECT-SINGLE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202130/p900204/raw"
+        "run": "91"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "SPB_IRDA_JF4M"
+        "karabo-da":
+            - "JNGFR01"
+            - "JNGFR02"
+            - "JNGFR03"
+            - "JNGFR04"
+            - "JNGFR05"
+            - "JNGFR06"
+            - "JNGFR07"
+            - "JNGFR08"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SPB_IRDA_JF4M-DARK-ADAPTIVE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_IRDA_JF4M/dark_r88"
-#         "in-folder": "/gpfs/exfel/exp/SPB/202130/p900204/raw"
-#         "run-high": "88"
-#         "run-med": "89"
-#         "run-low": "90"
-#         "report-to": "SPB_IRDA_JF4M_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "SPB_IRDA_JF4M"
-#         "karabo-da":
-#             - "JNGFR01"
-#             - "JNGFR02"
-#             - "JNGFR03"
-#             - "JNGFR04"
-#             - "JNGFR05"
-#             - "JNGFR06"
-#             - "JNGFR07"
-#             - "JNGFR08"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SPB_IRDA_JF4M/dark_r88"
+"SPB_IRDA_JF4M-DARK-ADAPTIVE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SPB/202130/p900204/raw"
+        "run-high": "88"
+        "run-med": "89"
+        "run-low": "90"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "SPB_IRDA_JF4M"
+        "karabo-da":
+            - "JNGFR01"
+            - "JNGFR02"
+            - "JNGFR03"
+            - "JNGFR04"
+            - "JNGFR05"
+            - "JNGFR06"
+            - "JNGFR07"
+            - "JNGFR08"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-HED_IA1_JF500K1-CORRECT-ADAPTIVE":
-#     "det_type": "JUNGFRAU"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_JF500K1/correct"
-#         "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
-#         "run": "230"
-#         "report-to": "HED_IA1_JF500K1_report"
-#         "karabo-id-control": ""
-#         "karabo-da-control": "JNGFRCTRL00"
-#         "karabo-id": "HED_IA1_JF500K1"
-#         "karabo-da": "JNGFR01"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_JF500K1/correct"
+"HED_IA1_JF500K1-CORRECT-ADAPTIVE":
+    "det_type": "JUNGFRAU"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
+        "run": "230"
+        "karabo-id-control": ""
+        "karabo-da-control": "JNGFRCTRL00"
+        "karabo-id": "HED_IA1_JF500K1"
+        "karabo-da": "JNGFR01"
+    "reference-folder": "{}/{}/{}"
 
-"Test-HED_IA1_JF500K1-DARK-ADAPTIVE":
+"HED_IA1_JF500K1-DARK-ADAPTIVE":
     "det_type": "JUNGFRAU"
     "cal_type": "DARK"
     "config":
-        "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_JF500K1/dark"
+        "out-folder": "{}/{}/{}"
         "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
         "run-high": "219"
         "run-med": "220"
         "run-low": "221"
-        "report-to": "HED_IA1_JF500K1_report"
         "karabo-id-control": ""
         "karabo-da-control": "JNGFRCTRL00"
         "karabo-id": "HED_IA1_JF500K1"
         "karabo-da": "JNGFR01"
-    "expected":
-        "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_JF500K1/dark"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-HED_IA1_EPX100-1-CORRECT":
-#     "det_type": "EPIX100"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_EPX100-1/correct"
-#         "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
-#         "run": "230"
-#         "report-to": "HED_IA1_EPX100-1_report"
-#         "karabo-id": "HED_IA1_EPX100-1"
-#         "karabo-da": "EPIX01"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_EPX100-1/correct"
+"HED_IA1_EPX100-1-CORRECT":
+    "det_type": "EPIX100"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}-1/{}"
+        "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
+        "run": "230"
+        "karabo-id": "HED_IA1_EPX100-1"
+        "karabo-da": "EPIX01"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-HED_IA1_EPX100-1-DARK":
-#     "det_type": "EPIX100"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_EPX100-1/dark"
-#         "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
-#         "run": "219"
-#         "report-to": "HED_IA1_EPX100-1_report"
-#         "karabo-id": "HED_IA1_EPX100-1"
-#         "karabo-da": "EPIX01"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/HED_IA1_EPX100-1/dark"
+"HED_IA1_EPX100-1-DARK":
+    "det_type": "EPIX100"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/HED/202102/p002656/raw"
+        "run": "219"
+        "karabo-id": "HED_IA1_EPX100-1"
+        "karabo-da": "EPIX01"    "reference-folder": "{}/{}/{}"
 
-# "Test-SQS_NQS_PNCCD1MP-CORRECT":
-#     "det_type": "PNCCD"
-#     "cal_type": "CORRECT"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SQS_NQS_PNCCD1MP/correct"
-#         "in-folder": "/gpfs/exfel/exp/SQS/202031/p900166/raw"
-#         "run": "347"
-#         "report-to": "SQS_NQS_PNCCD1MP_report"
-#         "karabo-id": "SQS_NQS_PNCCD1MP"
-#         "karabo-da": "PNCCD01"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SQS_NQS_PNCCD1MP/correct"
+"SQS_NQS_PNCCD1MP-CORRECT":
+    "det_type": "PNCCD"
+    "cal_type": "CORRECT"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SQS/202031/p900166/raw"
+        "run": "347"
+        "karabo-id": "SQS_NQS_PNCCD1MP"
+        "karabo-da": "PNCCD01"
+    "reference-folder": "{}/{}/{}"
 
-# "Test-SQS_NQS_PNCCD1MP-DARK":
-#     "det_type": "PNCCD"
-#     "cal_type": "DARK"
-#     "config":
-#         "out-folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SQS_NQS_PNCCD1MP/dark"
-#         "in-folder": "/gpfs/exfel/exp/SQS/202031/p900166/raw"
-#         "run": "345"
-#         "report-to": "SQS_NQS_PNCCD1MP_report"
-#         "karabo-id": "SQS_NQS_PNCCD1MP"
-#         "karabo-da": "PNCCD01"
-#     "expected":
-#         "reference_out_folder": "/gpfs/exfel/data/scratch/ahmedk/test/remove/reference/SQS_NQS_PNCCD1MP/dark"
+"SQS_NQS_PNCCD1MP-DARK":
+    "det_type": "PNCCD"
+    "cal_type": "DARK"
+    "config":
+        "out-folder": "{}/{}/{}"
+        "in-folder": "/gpfs/exfel/exp/SQS/202031/p900166/raw"
+        "run": "345"
+        "karabo-id": "SQS_NQS_PNCCD1MP"
+        "karabo-da": "PNCCD01"
+    "reference-folder": "{}/{}/{}"
diff --git a/tests/test_pre_deployment.py b/tests/test_pre_deployment.py
index 790e1802c..ea0a39280 100644
--- a/tests/test_pre_deployment.py
+++ b/tests/test_pre_deployment.py
@@ -17,13 +17,17 @@ import pathlib
 import time
 from contextlib import redirect_stdout
 from subprocess import PIPE, run
-from typing import Any, Dict, List
+from typing import Any, Dict, List, Tuple
 
 import pytest
 import yaml
 
 import xfel_calibrate.calibrate as calibrate
 
+
+REFERENCE_FOLDER = "/gpfs/exfel/data/scratch/ahmedk/test/remove/pytest"
+OUT_FOLDER = "/gpfs/exfel/data/scratch/ahmedk/test/remove/pytest"
+
 with open("./callab_tests.yaml", "r") as f:
     callab_test_dict = yaml.load(f)
 
@@ -43,7 +47,7 @@ def validate_h5files(f, reference):
     return filemd5(f) == filemd5(reference / f.name), f
 
 
-def parse_config(cmd: List[str], config: Dict[str, Any]) -> List[str]:
+def parse_config(cmd: List[str], config: Dict[str, Any], out_folder: str) -> List[str]:
     """Convert a dictionary to a list of arguments.
 
        Values that are not strings will be cast.
@@ -52,6 +56,7 @@ def parse_config(cmd: List[str], config: Dict[str, Any]) -> List[str]:
        Booleans will be converted to a `--key` flag, where `key` is the
        dictionary key.
     """
+
     for key, value in config.items():
         if ' ' in key or (isinstance(value, str) and ' ' in value):
             raise ValueError('Spaces are not allowed', key, value)
@@ -65,27 +70,33 @@ def parse_config(cmd: List[str], config: Dict[str, Any]) -> List[str]:
         else:
             if value in ['""', "''"]:
                 value = ""
+            if key == "out-folder":
+                value = out_folder
             cmd += ["--{}".format(key), str(value)]
-
     return cmd
 
 @pytest.mark.manual_run
 @pytest.mark.parametrize("calibration_test", list(callab_test_dict.items()))
 def test_xfel_calibrate(calibration_test):
+
     test_key, val_dict = calibration_test
+    cmd = ["xfel-calibrate", val_dict["det_type"], val_dict["cal_type"]]
+    cal_conf = val_dict["config"]
+
+    cal_conf["report-to"] = test_key
+    report_name = test_key
+
+    out_folder = pathlib.Path(cal_conf["out-folder"].format(
+        OUT_FOLDER, cal_conf["karabo-id"], test_key))
+    cmd = parse_config(cmd, cal_conf, out_folder)
 
-    test_cmd = ["xfel-calibrate", val_dict["det_type"], val_dict["cal_type"]]
-    conf_dict = val_dict["config"]
-    out_folder = pathlib.Path(conf_dict["out-folder"])
-    report_name = conf_dict["report-to"]
-    expected_dict = val_dict["expected"]
-    reference_out_folder = pathlib.Path(expected_dict["reference_out_folder"])
-    parse_config(test_cmd, val_dict["config"])
-    test_cmd += ["--slurm-name", test_key]
+    reference_folder = pathlib.Path(val_dict["reference-folder"].format(
+        REFERENCE_FOLDER, cal_conf["karabo-id"], test_key))
+    cmd += ["--slurm-name", test_key]
     f = io.StringIO()
 
     with redirect_stdout(f):        
-        calibrate.run(test_cmd)
+        calibrate.run(cmd)
 
         out_str = f.getvalue()
 
@@ -120,7 +131,7 @@ def test_xfel_calibrate(calibration_test):
 
             # 3rd Check number of produced h5 files.
             h5files = list(out_folder.glob("*.h5"))
-            expected_h5files = list(reference_out_folder.glob("*.h5"))
+            expected_h5files = list(reference_folder.glob("*.h5"))
             assert len(h5files) == len(expected_h5files), f"{test_key} failure, number of files are not as expected."  # noqa
             print(f"{test_key}'s calibration h5files numbers are as expected.")
             
@@ -128,10 +139,10 @@ def test_xfel_calibrate(calibration_test):
             non_valid_files = []
             with multiprocessing.Pool() as pool:
                 result = pool.starmap(validate_h5files, zip(
-                    h5files, len(h5files)*[reference_out_folder]))
+                    h5files, len(h5files)*[reference_folder]))
             for i in result:
                 all_files_validated.append(i[0])
-                if i[0]:
+                if not i[0]:
                     non_valid_files.append(i[1])
             assert all(all_files_validated), f"{test_key} failure, while validating {non_valid_files}"  # noqa
             print(f"{test_key}'s calibration h5files are validated successfully.")
-- 
GitLab