DMSC Integration Testing

Last updated: September 25, 2026 08:04:50

Test: nexusfiles-scipp|estia|estia_read_choppers_to_disk_choppers|bwc

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fd73ff67680>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022380.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fd7f587c5e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fd79dc41800>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7faea5fcce90>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022300.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7faf556145e0>
check_disk_chopper = <function _check_disk_chopper at 0x7faefd935800>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fef3cbd2240>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022250.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fefebf0c5e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fef94975800>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f9ad8fe01a0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022210.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f9b883c45e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f9b308fd940>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7feb4c20f440>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022210.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7febfb6645e0>
check_disk_chopper = <function _check_disk_chopper at 0x7feba3f65800>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f4e2667dfa0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022190.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f4ed5c6c5e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f4e7dff9800>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fbcf1cb6b10>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022120.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fbd9bff6e80>
check_disk_chopper = <function _check_disk_chopper at 0x7fbd499419e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f02ca186f30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022070.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f0379af05e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f0321e91940>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fbf75860620>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022070.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fc0251d05e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fbfcd549a80>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f1545f6bb30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022060.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f15f58145e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f159e19d940>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f0d99756630>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022040.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f0e43bf6e80>
check_disk_chopper = <function _check_disk_chopper at 0x7f0df15399e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f2c77209b20>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022040.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f2cd0c99580>
check_disk_chopper = <function _check_disk_chopper at 0x7f2ccee5d4e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f8d8ed4dbb0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022040.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8de8795580>
check_disk_chopper = <function _check_disk_chopper at 0x7f8de734d620>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f2ef9a2b140>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022030.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f2f532bd580>
check_disk_chopper = <function _check_disk_chopper at 0x7f2f51cf9620>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f70951d2c30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022030.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f70eeb31580>
check_disk_chopper = <function _check_disk_chopper at 0x7f70ed0e9620>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fe24c3e7f20>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00022020.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fe2b48f1580>
check_disk_chopper = <function _check_disk_chopper at 0x7fe2b2c614e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fe71d443530>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021970.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fe776ce14e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fe775059440>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f8d2c2d0d70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021906.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8ddcf90540>
check_disk_chopper = <function _check_disk_chopper at 0x7f8d84e3d580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:123: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f6c2010f680>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021906.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f6c79b094e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f6c780a1580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f7fdb358410>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021896.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8034d994e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f80332a1580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f197d6bb920>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021836.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f19d729d4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f19d5615580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f1d88ea46e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021696.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f1de2a994e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f1de1099580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fe547177b00>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021556.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fe5a0b2d4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fe59f529440>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f6f20861d30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021516.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f6f7a2594e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f6f78c6d440>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7feee703f1a0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021416.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fef40a454e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fef3efe1580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f8512309460>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021276.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f856be114e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f856a351580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fcfb66eac30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00021126.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fd00ff794e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fd00e371580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fa14981d6a0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020986.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fa17b3414e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fa1794d5440>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fdba7a855e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020916.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fdbd96894e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fdbd8219580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fccfadb86b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020896.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fcd2c8ed4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fcd2adb1580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f9bbf80f230>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020896.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f9bf11c54e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f9bef54d580>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f9d9ccec770>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020896.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f9df6dc23e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f9dccc977e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7ffab43136b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020836.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7ffb136ea3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7ffae468f7e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f3711fc0260>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020706.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f37713e63e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f374237b6a0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f5a64aab9e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020566.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f5abebca3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f5a948ff7e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fd86c473e60>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020410.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fd8cade63e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fd89b8df7e0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7f236a200fe0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020270.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f23c92ea3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f23989256c0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:343: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError
Full output
chopper_name = 'bwc'
workflow = <sciline.pipeline.Pipeline object at 0x7fb6518f7a40>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_estia_999999_00020197.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fb6b0aea3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fb6801296c0>

    @pytest.mark.parametrize("chopper_name", ["bwc"])
    def test_estia_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/estia/estia_load_nexus_test.py:131: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:343: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...(0, 0.319834, -24.0998), 'transform': <scipp.Variable> ()  translation3              [m]  (0, 0.319834, -24.0998), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-estia/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError