Source code for ewoksfluo.tests.tasks.test_pick_tasks

import pytest
from ewoksorange.tests.utils import execute_task

from orangecontrib.ewoksfluo.categories.input.pick_scan import OWPickScan
from orangecontrib.ewoksfluo.categories.input.pick_scan_groups import OWPickScanGroups
from orangecontrib.ewoksfluo.categories.input.pick_scans import OWPickScans


[docs] @pytest.mark.parametrize( "task_cls", [OWPickScan.ewokstaskclass, OWPickScan], ids=["widget", "task"] ) def test_pick_scan(task_cls): result = execute_task( task_cls, inputs={"filename": "dataset.h5", "scan_number": 1, "retry_timeout": -1}, ) expected = {"bliss_scan_uri": "dataset.h5::/1.1"} assert result == expected
[docs] @pytest.mark.parametrize( "task_cls", [OWPickScans.ewokstaskclass, OWPickScans], ids=["widget", "task"] ) def test_pick_scans(task_cls): result = execute_task( task_cls, inputs={ "filenames": ["dataset1.h5", "dataset1.h5"], "scan_ranges": [(2, 5), (2, 3)], "retry_timeout": -1, }, ) expected = { "bliss_scan_uris": [ "dataset1.h5::/2.1", "dataset1.h5::/3.1", "dataset1.h5::/4.1", "dataset1.h5::/5.1", "dataset1.h5::/2.1", "dataset1.h5::/3.1", ], } assert result == expected
[docs] @pytest.mark.parametrize( "task_cls", [OWPickScans.ewokstaskclass, OWPickScans], ids=["widget", "task"] ) def test_pick_scans_with_exclude(task_cls): result = execute_task( task_cls, inputs={ "filenames": ["dataset1.h5", "dataset1.h5"], "scan_ranges": [(2, 5), (2, 3)], "exclude_scans": [[3], []], "retry_timeout": -1, }, ) expected = { "bliss_scan_uris": [ "dataset1.h5::/2.1", "dataset1.h5::/4.1", "dataset1.h5::/5.1", "dataset1.h5::/2.1", "dataset1.h5::/3.1", ], } assert result == expected
[docs] @pytest.mark.parametrize( "task_cls", [OWPickScanGroups.ewokstaskclass, OWPickScanGroups], ids=["widget", "task"], ) def test_pick_scan_groups(task_cls): result = execute_task( task_cls, inputs={ "filenames": [ ["dataset1.h5", "dataset2.h5"], ["dataset3.h5", "dataset4.h5"], ], "scan_ranges": [ [(1, 2), (10, 11)], [(20, 21), (30, 31)], ], "retry_timeout": -1, }, ) expected = { "bliss_scan_uris": [ [ "dataset1.h5::/1.1", "dataset1.h5::/2.1", "dataset2.h5::/10.1", "dataset2.h5::/11.1", ], [ "dataset3.h5::/20.1", "dataset3.h5::/21.1", "dataset4.h5::/30.1", "dataset4.h5::/31.1", ], ], } assert result == expected
[docs] @pytest.mark.parametrize( "task_cls", [OWPickScanGroups.ewokstaskclass, OWPickScanGroups], ids=["widget", "task"], ) def test_pick_scan_groups_with_exclude(task_cls): result = execute_task( task_cls, inputs={ "filenames": [ ["dataset1.h5", "dataset2.h5"], ["dataset3.h5", "dataset4.h5"], ], "scan_ranges": [ [(1, 3), (10, 11)], [(20, 22), (30, 31)], ], "exclude_scans": [ [[2], []], [[21], [30]], ], "retry_timeout": -1, }, ) expected = { "bliss_scan_uris": [ [ "dataset1.h5::/1.1", "dataset1.h5::/3.1", "dataset2.h5::/10.1", "dataset2.h5::/11.1", ], [ "dataset3.h5::/20.1", "dataset3.h5::/22.1", "dataset4.h5::/31.1", ], ], } assert result == expected
[docs] @pytest.mark.parametrize( "task_cls", [OWPickScanGroups.ewokstaskclass, OWPickScanGroups], ids=["widget", "task"], ) def test_pick_scan_groups_group_by_index_unequal_lengths(task_cls): result = execute_task( task_cls, inputs={ "filenames": [ ["dataset1.h5"], ["dataset2.h5"], ], "scan_ranges": [ [(1, 4)], [(10, 11)], ], "group_by_index": True, "retry_timeout": -1, }, ) expected = { "bliss_scan_uris": [ [ "dataset1.h5::/1.1", "dataset2.h5::/10.1", ], [ "dataset1.h5::/2.1", "dataset2.h5::/11.1", ], [ "dataset1.h5::/3.1", ], [ "dataset1.h5::/4.1", ], ], } assert result == expected