@@ -18,6 +18,7 @@ def start_doc_default_template() -> dict:
1818 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
1919 "data_session" : "ab123" ,
2020 "instrument" : "p01" ,
21+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
2122 "data_session_directory" : "/p01/ab123" ,
2223 "scan_id" : 22 ,
2324 "plan_type" : "generator" ,
@@ -61,7 +62,7 @@ def start_doc_custom_template() -> dict:
6162 "instrument" : "p01" ,
6263 "data_session_directory" : "/p01/ab123" ,
6364 "scan_id" : 22 ,
64- "data_file_path_template " : "{instrument}-{scan_id}-{device_name}-custom" ,
65+ "detector_file_template " : "{instrument}-{scan_id}-{device_name}-custom" ,
6566 "plan_type" : "generator" ,
6667 "plan_name" : "count" ,
6768 "detectors" : ["det" ],
@@ -99,6 +100,7 @@ def start_doc_missing_instrument() -> dict:
99100 "uid" : "27c48d2f-d8c6-4ac0-8146-fedf467ce11f" ,
100101 "time" : 1741264729.96875 ,
101102 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
103+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
102104 "data_session" : "ab123" ,
103105 "data_session_directory" : "/p01/ab123" ,
104106 "scan_id" : 22 ,
@@ -137,6 +139,7 @@ def start_doc_missing_scan_id() -> dict:
137139 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
138140 "data_session" : "ab123" ,
139141 "instrument" : "p01" ,
142+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
140143 "data_session_directory" : "/p01/ab123" ,
141144 "plan_type" : "generator" ,
142145 "plan_name" : "count" ,
@@ -171,6 +174,7 @@ def start_doc_default_data_session_directory() -> dict:
171174 "uid" : "27c48d2f-d8c6-4ac0-8146-fedf467ce11f" ,
172175 "time" : 1741264729.96875 ,
173176 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
177+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
174178 "data_session" : "ab123" ,
175179 "instrument" : "p01" ,
176180 "scan_id" : 22 ,
@@ -240,6 +244,7 @@ def start_doc_1() -> dict:
240244 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
241245 "data_session" : "ab123" ,
242246 "instrument" : "p01" ,
247+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
243248 "data_session_directory" : "/p01/ab123" ,
244249 "scan_id" : 50 ,
245250 "plan_type" : "generator" ,
@@ -279,6 +284,7 @@ def start_doc_2() -> dict:
279284 "versions" : {"ophyd" : "1.10.0" , "bluesky" : "1.13" },
280285 "data_session" : "ab123" ,
281286 "instrument" : "p02" ,
287+ "detector_file_template" : "{instrument}-{scan_id}-{device_name}" ,
282288 "data_session_directory" : "/p02/ab123" ,
283289 "scan_id" : 51 ,
284290 "plan_type" : "generator" ,
@@ -378,3 +384,11 @@ def test_start_document_path_provider_run_stop_called_out_of_order_raises(
378384 "This is not supported. If you need to do this speak to core DAQ." ,
379385 ):
380386 pp .run_stop (name = "stop" , stop_document = stop_doc_1 )
387+
388+
389+ def test_error_if_template_missing (start_doc_1 : RunStart ):
390+ pp = StartDocumentPathProvider ()
391+ start_doc_1 .pop ("detector_file_template" )
392+ pp .run_start ("start" , start_doc_1 )
393+ with pytest .raises (ValueError , match = "detector_file_template" ):
394+ pp ("foo" )
0 commit comments