Source code for ewoksbm29.tests.test_workflows

from ..workflows import run


[docs] def test_integrate_offline(mock_dahu, offline_saxs_data, tmp_path): read_inputs = offline_saxs_data integrate_inputs = { "integrate_parameters": { "poni_file": "/tmp/calib.poni", }, "dahu_url": "tango://host:port/domain/family/member", } results = run.integrate(read_inputs, integrate_inputs) # The order of the Dahu job ID's is undefined. # The order of the Dahu job index (the keys of results["dahu_results"]) is defined. dahu_job_ids = { task_outputs.pop("dahu_job_id", None) for task_outputs in results["dahu_results"].values() } expected = { "dahu_results": { 0: { "dahu_result": { "energy": 12.4, "frame_ids": [0, 1, 2, 3, 4], "input_file": str(tmp_path / "scan0001" / "lima_0000.h5"), "output_file": str( tmp_path / "integrate" / "lima_0000-integrate.h5" ), "plugin_name": "bm29.integratemultiframe", "poni_file": "/tmp/calib.poni", }, }, 1: { "dahu_result": { "energy": 12.4, "frame_ids": [5, 6, 7, 8, 9], "input_file": str(tmp_path / "scan0001" / "lima_0001.h5"), "output_file": str( tmp_path / "integrate" / "lima_0001-integrate.h5" ), "plugin_name": "bm29.integratemultiframe", "poni_file": "/tmp/calib.poni", }, }, 2: { "dahu_result": { "energy": 12.4, "frame_ids": [10, 11, 12], "input_file": str(tmp_path / "scan0001" / "lima_0002.h5"), "output_file": str( tmp_path / "integrate" / "lima_0002-integrate.h5" ), "plugin_name": "bm29.integratemultiframe", "poni_file": "/tmp/calib.poni", }, }, } } assert results == expected assert dahu_job_ids == {1, 2, 3}
[docs] def test_subtract(mock_dahu, tmp_path): out_root = tmp_path / "sample" subtract_inputs = { "sample_file": str(out_root / "integrate" / "sample_lima_0000.h5"), "buffer_files": [ str(out_root / "integrate" / "buffer1_lima_0000.h5"), str(out_root / "integrate" / "buffer2_lima_0000.h5"), ], "dahu_url": "tango://host:port/domain/family/member", } results = run.subtract(subtract_inputs) expected = { "dahu_results": { 0: { "dahu_job_id": 1, "dahu_result": { "sample_file": str(out_root / "integrate" / "sample_lima_0000.h5"), "buffer_files": [ str(out_root / "integrate" / "buffer1_lima_0000.h5"), str(out_root / "integrate" / "buffer2_lima_0000.h5"), ], "output_file": str( out_root / "subtract" / "sample_lima_0000-subtract.h5" ), "plugin_name": "bm29.subtractbuffer", }, }, } } assert results == expected
[docs] def test_hplc_summary(mock_dahu, tmp_path): out_root = tmp_path / "sample" summary_inputs = { "integrated_files": [ str(out_root / "integrate" / "sample_lima_0000.h5"), str(out_root / "integrate" / "sample_lima_0001.h5"), ], "dahu_url": "tango://host:port/domain/family/member", } results = run.hplc_summary(summary_inputs) expected = { "dahu_results": { 0: { "dahu_job_id": 1, "dahu_result": { "integrated_files": [ str(out_root / "integrate" / "sample_lima_0000.h5"), str(out_root / "integrate" / "sample_lima_0001.h5"), ], "output_file": str(out_root / "hplc" / "sample_lima_000-hplc.h5"), "plugin_name": "bm29.hplc", }, } } } assert results == expected