6 from WorkflowTestRunner.ScriptUtils
import setup_logger, setup_parser, get_test_setup, get_standard_performance_checks, \
7 run_tests, run_checks, run_summary
8 from WorkflowTestRunner.StandardTests
import DataOverlayPreparationTest, DerivationTest, GenerationTest, OverlayTest, DataOverlayTest, PileUpTest, QTest, SimulationTest
9 from WorkflowTestRunner.Test
import WorkflowRun, WorkflowType
14 run = WorkflowRun.Run3
19 options = parser.parse_args()
24 if options.generation:
25 dsid =
"421356" if not options.dsid
else options.dsid
26 tests_to_run.append(GenerationTest(f
"gen{dsid}", run, WorkflowType.Generation, [
"generate"], setup, options.extra_args))
27 elif options.simulation:
28 if not options.workflow
or options.workflow
is WorkflowType.FullSim:
29 ami_tag =
"s4006" if not options.ami_tag
else options.ami_tag
30 tests_to_run.append(SimulationTest(ami_tag, run, WorkflowType.FullSim, [
"EVNTtoHITS"], setup, options.extra_args +
" --conditionsTag 'default:OFLCOND-MC21-SDR-RUN3-07' --geometryVersion 'default:ATLAS-R3S-2021-03-02-00'"))
31 if options.workflow
is WorkflowType.AF3:
32 ami_tag =
"a913" if not options.ami_tag
else options.ami_tag
33 tests_to_run.append(SimulationTest(ami_tag, run, WorkflowType.AF3, [
"EVNTtoHITS"], setup, options.extra_args))
34 if options.workflow
is WorkflowType.HitsMerge:
35 ami_tag =
"s4007" if not options.ami_tag
else options.ami_tag
36 tests_to_run.append(SimulationTest(ami_tag, run, WorkflowType.HitsMerge, [
"HITSMerge"], setup, options.extra_args))
37 if options.workflow
is WorkflowType.HitsFilter:
38 ami_tag =
"s4008" if not options.ami_tag
else options.ami_tag
39 tests_to_run.append(SimulationTest(ami_tag, run, WorkflowType.HitsFilter, [
"FilterHitTf"], setup, options.extra_args))
41 if not options.workflow
or options.workflow
is WorkflowType.MCOverlay:
42 ami_tag =
"d1759" if not options.ami_tag
else options.ami_tag
43 tests_to_run.append(OverlayTest(ami_tag, run, WorkflowType.MCOverlay, [
"Overlay"], setup, options.extra_args +
" --runNumber 601229 --conditionsTag 'default:OFLCOND-MC23-SDR-RUN3-08'"))
44 if not options.workflow
or options.workflow
is WorkflowType.DataOverlay:
45 ami_tag =
"d2029" if not options.ami_tag
else options.ami_tag
46 tests_to_run.append(DataOverlayTest(ami_tag, run, WorkflowType.DataOverlay, [
"Overlay"], setup, options.extra_args +
" --runNumber 601229 --postInclude \"default:PyJobTransforms.UseFrontier\""))
47 if not options.workflow
or options.workflow
is WorkflowType.DataOverlayChain:
48 ami_tag =
"d2030" if not options.ami_tag
else options.ami_tag
49 tests_to_run.append(DataOverlayTest(ami_tag, run, WorkflowType.DataOverlayChain, [
"EVNTtoRDO"], setup, options.extra_args +
" --runNumber 603398 --postInclude \"default:PyJobTransforms.UseFrontier\""))
51 if setup.parallel_execution:
52 log.error(
"Parallel execution not supported for pile-up workflow")
54 if not options.workflow
or options.workflow
is WorkflowType.PileUpPresampling:
55 ami_tag =
"d1919" if not options.ami_tag
else options.ami_tag
56 tests_to_run.append(PileUpTest(ami_tag, run, WorkflowType.PileUpPresampling, [
"HITtoRDO"], setup, options.extra_args))
57 if not options.workflow
or options.workflow
is WorkflowType.MCPileUpReco:
58 tests_to_run.append(QTest(
"q455", run, WorkflowType.MCPileUpReco, [
"Overlay",
"RDOtoRDOTrigger",
"RAWtoALL"], setup, options.extra_args))
59 if options.workflow
is WorkflowType.MinbiasPreprocessing:
60 ami_tag =
"d2008" if not options.ami_tag
else options.ami_tag
61 tests_to_run.append(DataOverlayPreparationTest(ami_tag, run, WorkflowType.MinbiasPreprocessing, [
"BStoRDO"], setup, options.extra_args))
62 elif options.derivation:
63 test_id =
"MC_PHYS" if not options.ami_tag
else options.ami_tag
64 test_id = f
"{test_id}_{run.value}"
65 tests_to_run.append(DerivationTest(test_id, run, WorkflowType.Derivation, [
"Derivation"], setup, options.extra_args))
67 if not options.workflow
or options.workflow
is WorkflowType.MCReco:
68 ami_tag =
"q454" if not options.ami_tag
else options.ami_tag
69 tests_to_run.append(QTest(ami_tag, run, WorkflowType.MCReco, [
"HITtoRDO",
"RDOtoRDOTrigger",
"RAWtoALL"], setup, options.extra_args))
70 if not options.workflow
or options.workflow
is WorkflowType.DataReco:
71 ami_tag =
"q449" if not options.ami_tag
else options.ami_tag
72 tests_to_run.append(QTest(ami_tag, run, WorkflowType.DataReco, [
"RAWtoALL",
"DQHistogramMerge"], setup, options.extra_args))
73 if options.workflow
is WorkflowType.DataOverlayReco:
74 ami_tag =
"q458" if not options.ami_tag
else options.ami_tag
75 tests_to_run.append(QTest(ami_tag, run, WorkflowType.DataOverlayReco, [
"RAWtoALL"], setup, options.extra_args))
84 all_passed =
run_checks(setup, tests_to_run, performance_checks)
90 if __name__ ==
"__main__":