def _get_state(transmission_radius_on_detector=None, transmission_roi_files=None, transmission_mask_files=None,
                   transmission_monitor=None, incident_monitor=None, rebin_type=None, wavelength_low=None,
                   wavelength_high=None, wavelength_step=None, wavelength_step_type=None,
                   use_full_wavelength_range=None,
                   wavelength_full_range_low=None, wavelength_full_range_high=None, prompt_peak_correction_min=None,
                   prompt_peak_correction_max=None, background_TOF_general_start=None, background_TOF_general_stop=None,
                   background_TOF_monitor_start=None, background_TOF_monitor_stop=None, background_TOF_roi_start=None,
                   background_TOF_roi_stop=None, sample_fit_type=None, sample_polynomial_order=None,
                   sample_wavelength_low=None, sample_wavelength_high=None, can_fit_type=None,
                   can_polynomial_order=None,
                   can_wavelength_low=None, can_wavelength_high=None):
        test_director = TestDirector()
        state = test_director.construct()
        data_state = state.data
        calculate_transmission_builder = get_calculate_transmission_builder(data_state)
        if transmission_radius_on_detector:
            calculate_transmission_builder.set_transmission_radius_on_detector(transmission_radius_on_detector)
        if transmission_roi_files:
            calculate_transmission_builder.set_transmission_roi_files(transmission_roi_files)
        if transmission_mask_files:
            calculate_transmission_builder.set_transmission_mask_files(transmission_mask_files)
        if transmission_monitor:
            calculate_transmission_builder.set_transmission_monitor(transmission_monitor)

        if incident_monitor:
            calculate_transmission_builder.set_incident_monitor(incident_monitor)
        if rebin_type:
            calculate_transmission_builder.set_rebin_type(rebin_type)
        if wavelength_low:
            calculate_transmission_builder.set_wavelength_low([wavelength_low])
        if wavelength_high:
            calculate_transmission_builder.set_wavelength_high([wavelength_high])
        if wavelength_step:
            calculate_transmission_builder.set_wavelength_step(wavelength_step)
        if wavelength_step_type:
            calculate_transmission_builder.set_wavelength_step_type(wavelength_step_type)
        if use_full_wavelength_range:
            calculate_transmission_builder.set_use_full_wavelength_range(use_full_wavelength_range)
        if wavelength_full_range_low:
            calculate_transmission_builder.set_wavelength_full_range_low(wavelength_full_range_low)
        if wavelength_full_range_high:
            calculate_transmission_builder.set_wavelength_full_range_high(wavelength_full_range_high)

        if prompt_peak_correction_min:
            calculate_transmission_builder.set_prompt_peak_correction_min(prompt_peak_correction_min)
        if prompt_peak_correction_max:
            calculate_transmission_builder.set_prompt_peak_correction_max(prompt_peak_correction_max)
        if prompt_peak_correction_min and prompt_peak_correction_max:
            calculate_transmission_builder.set_prompt_peak_correction_enabled(True)

        if background_TOF_general_start:
            calculate_transmission_builder.set_background_TOF_general_start(background_TOF_general_start)
        if background_TOF_general_stop:
            calculate_transmission_builder.set_background_TOF_general_stop(background_TOF_general_stop)
        if background_TOF_monitor_start:
            calculate_transmission_builder.set_background_TOF_monitor_start(background_TOF_monitor_start)
        if background_TOF_monitor_stop:
            calculate_transmission_builder.set_background_TOF_monitor_stop(background_TOF_monitor_stop)
        if background_TOF_roi_start:
            calculate_transmission_builder.set_background_TOF_roi_start(background_TOF_roi_start)
        if background_TOF_roi_stop:
            calculate_transmission_builder.set_background_TOF_roi_stop(background_TOF_roi_stop)

        if sample_fit_type:
            calculate_transmission_builder.set_Sample_fit_type(sample_fit_type)
        if sample_polynomial_order:
            calculate_transmission_builder.set_Sample_polynomial_order(sample_polynomial_order)
        if sample_wavelength_low:
            calculate_transmission_builder.set_Sample_wavelength_low(sample_wavelength_low)
        if sample_wavelength_high:
            calculate_transmission_builder.set_Sample_wavelength_high(sample_wavelength_high)

        if can_fit_type:
            calculate_transmission_builder.set_Can_fit_type(can_fit_type)
        if can_polynomial_order:
            calculate_transmission_builder.set_Can_polynomial_order(can_polynomial_order)
        if can_wavelength_low:
            calculate_transmission_builder.set_Can_wavelength_low(can_wavelength_low)
        if can_wavelength_high:
            calculate_transmission_builder.set_Can_wavelength_high(can_wavelength_high)
        calculate_transmission = calculate_transmission_builder.build()
        state.adjustment.calculate_transmission = calculate_transmission
        return state.property_manager
Ejemplo n.º 2
0
    def construct(self):
        facility = SANSFacility.ISIS

        # Build the SANSStateData
        if self.data_state is None:
            data_builder = get_data_builder(facility)
            data_builder.set_sample_scatter("SANS2D00022024")
            data_builder.set_can_scatter("SANS2D00022024")
            self.data_state = data_builder.build()

        # Build the SANSStateMove
        if self.move_state is None:
            move_builder = get_move_builder(self.data_state)
            if hasattr(move_builder, "set_HAB_x_translation_correction"):
                move_builder.set_HAB_x_translation_correction(21.2)
            move_builder.set_LAB_x_translation_correction(12.1)
            self.move_state = move_builder.build()

        # Build the SANSStateReduction
        if self.reduction_state is None:
            reduction_builder = get_reduction_mode_builder(self.data_state)
            reduction_builder.set_reduction_mode(ISISReductionMode.Merged)
            reduction_builder.set_reduction_dimensionality(ReductionDimensionality.OneDim)
            reduction_builder.set_merge_fit_mode(FitModeForMerge.Both)
            reduction_builder.set_merge_shift(324.2)
            reduction_builder.set_merge_scale(3420.98)
            self.reduction_state = reduction_builder.build()

        # Build the SANSStateSliceEvent
        if self.slice_state is None:
            slice_builder = get_slice_event_builder(self.data_state)
            slice_builder.set_start_time([0.1, 1.3])
            slice_builder.set_end_time([0.2, 1.6])
            self.slice_state = slice_builder.build()

        # Build the SANSStateMask
        if self.mask_state is None:
            mask_builder = get_mask_builder(self.data_state)
            mask_builder.set_radius_min(10.0)
            mask_builder.set_radius_max(20.0)
            self.mask_state = mask_builder.build()

        # Build the SANSStateWavelength
        if self.wavelength_state is None:
            wavelength_builder = get_wavelength_builder(self.data_state)
            wavelength_builder.set_wavelength_low(1.0)
            wavelength_builder.set_wavelength_high(10.0)
            wavelength_builder.set_wavelength_step(2.0)
            wavelength_builder.set_wavelength_step_type(RangeStepType.Lin)
            wavelength_builder.set_rebin_type(RebinType.Rebin)
            self.wavelength_state = wavelength_builder.build()

        # Build the SANSStateSave
        if self.save_state is None:
            save_builder = get_save_builder(self.data_state)
            save_builder.set_user_specified_output_name("test_file_name")
            save_builder.set_file_format([SaveType.Nexus])
            self.save_state = save_builder.build()

        # Build the SANSStateScale
        if self.scale_state is None:
            scale_builder = get_scale_builder(self.data_state)
            scale_builder.set_shape(SampleShape.Cuboid)
            scale_builder.set_width(1.0)
            scale_builder.set_height(2.0)
            scale_builder.set_thickness(3.0)
            scale_builder.set_scale(4.0)
            self.scale_state = scale_builder.build()

        # Build the SANSAdjustmentState
        if self.adjustment_state is None:
            # NormalizeToMonitor
            normalize_to_monitor_builder = get_normalize_to_monitor_builder(self.data_state)
            normalize_to_monitor_builder.set_wavelength_low(1.0)
            normalize_to_monitor_builder.set_wavelength_high(10.0)
            normalize_to_monitor_builder.set_wavelength_step(2.0)
            normalize_to_monitor_builder.set_wavelength_step_type(RangeStepType.Lin)
            normalize_to_monitor_builder.set_rebin_type(RebinType.Rebin)
            normalize_to_monitor_builder.set_background_TOF_general_start(1000.)
            normalize_to_monitor_builder.set_background_TOF_general_stop(2000.)
            normalize_to_monitor_builder.set_incident_monitor(1)
            normalize_to_monitor = normalize_to_monitor_builder.build()

            # CalculateTransmission
            calculate_transmission_builder = get_calculate_transmission_builder(self.data_state)
            calculate_transmission_builder.set_transmission_monitor(3)
            calculate_transmission_builder.set_incident_monitor(2)
            calculate_transmission_builder.set_wavelength_low(1.0)
            calculate_transmission_builder.set_wavelength_high(10.0)
            calculate_transmission_builder.set_wavelength_step(2.0)
            calculate_transmission_builder.set_wavelength_step_type(RangeStepType.Lin)
            calculate_transmission_builder.set_rebin_type(RebinType.Rebin)
            calculate_transmission_builder.set_background_TOF_general_start(1000.)
            calculate_transmission_builder.set_background_TOF_general_stop(2000.)

            calculate_transmission_builder.set_Sample_fit_type(FitType.Linear)
            calculate_transmission_builder.set_Sample_polynomial_order(0)
            calculate_transmission_builder.set_Sample_wavelength_low(1.0)
            calculate_transmission_builder.set_Sample_wavelength_high(10.0)
            calculate_transmission_builder.set_Can_fit_type(FitType.Polynomial)
            calculate_transmission_builder.set_Can_polynomial_order(3)
            calculate_transmission_builder.set_Can_wavelength_low(10.0)
            calculate_transmission_builder.set_Can_wavelength_high(20.0)
            calculate_transmission = calculate_transmission_builder.build()

            # Wavelength and pixel adjustment
            wavelength_and_pixel_builder = get_wavelength_and_pixel_adjustment_builder(self.data_state)
            wavelength_and_pixel_builder.set_wavelength_low(1.0)
            wavelength_and_pixel_builder.set_wavelength_high(10.0)
            wavelength_and_pixel_builder.set_wavelength_step(2.0)
            wavelength_and_pixel_builder.set_wavelength_step_type(RangeStepType.Lin)
            wavelength_and_pixel = wavelength_and_pixel_builder.build()

            # Adjustment
            adjustment_builder = get_adjustment_builder(self.data_state)
            adjustment_builder.set_normalize_to_monitor(normalize_to_monitor)
            adjustment_builder.set_calculate_transmission(calculate_transmission)
            adjustment_builder.set_wavelength_and_pixel_adjustment(wavelength_and_pixel)
            self.adjustment_state = adjustment_builder.build()

        # SANSStateConvertToQ
        if self.convert_to_q_state is None:
            convert_to_q_builder = get_convert_to_q_builder(self.data_state)
            convert_to_q_builder.set_reduction_dimensionality(ReductionDimensionality.OneDim)
            convert_to_q_builder.set_use_gravity(False)
            convert_to_q_builder.set_radius_cutoff(0.002)
            convert_to_q_builder.set_wavelength_cutoff(12.)
            convert_to_q_builder.set_q_min(0.1)
            convert_to_q_builder.set_q_max(0.8)
            convert_to_q_builder.set_q_1d_rebin_string("0.1,0.01,0.8")
            convert_to_q_builder.set_use_q_resolution(False)
            self.convert_to_q_state = convert_to_q_builder.build()

        # Set the sub states on the SANSState
        state_builder = get_state_builder(self.data_state)
        state_builder.set_data(self.data_state)
        state_builder.set_move(self.move_state)
        state_builder.set_reduction(self.reduction_state)
        state_builder.set_slice(self.slice_state)
        state_builder.set_mask(self.mask_state)
        state_builder.set_wavelength(self.wavelength_state)
        state_builder.set_save(self.save_state)
        state_builder.set_scale(self.scale_state)
        state_builder.set_adjustment(self.adjustment_state)
        state_builder.set_convert_to_q(self.convert_to_q_state)
        return state_builder.build()
Ejemplo n.º 3
0
    def _get_state(transmission_radius_on_detector=None,
                   transmission_roi_files=None,
                   transmission_mask_files=None,
                   transmission_monitor=None,
                   incident_monitor=None,
                   rebin_type=None,
                   wavelength_low=None,
                   wavelength_high=None,
                   wavelength_step=None,
                   wavelength_step_type=None,
                   use_full_wavelength_range=None,
                   wavelength_full_range_low=None,
                   wavelength_full_range_high=None,
                   prompt_peak_correction_min=None,
                   prompt_peak_correction_max=None,
                   background_TOF_general_start=None,
                   background_TOF_general_stop=None,
                   background_TOF_monitor_start=None,
                   background_TOF_monitor_stop=None,
                   background_TOF_roi_start=None,
                   background_TOF_roi_stop=None,
                   sample_fit_type=None,
                   sample_polynomial_order=None,
                   sample_wavelength_low=None,
                   sample_wavelength_high=None,
                   can_fit_type=None,
                   can_polynomial_order=None,
                   can_wavelength_low=None,
                   can_wavelength_high=None):
        test_director = TestDirector()
        state = test_director.construct()
        data_state = state.data
        calculate_transmission_builder = get_calculate_transmission_builder(
            data_state)
        if transmission_radius_on_detector:
            calculate_transmission_builder.set_transmission_radius_on_detector(
                transmission_radius_on_detector)
        if transmission_roi_files:
            calculate_transmission_builder.set_transmission_roi_files(
                transmission_roi_files)
        if transmission_mask_files:
            calculate_transmission_builder.set_transmission_mask_files(
                transmission_mask_files)
        if transmission_monitor:
            calculate_transmission_builder.set_transmission_monitor(
                transmission_monitor)

        if incident_monitor:
            calculate_transmission_builder.set_incident_monitor(
                incident_monitor)
        if rebin_type:
            calculate_transmission_builder.set_rebin_type(rebin_type)
        if wavelength_low:
            calculate_transmission_builder.set_wavelength_low([wavelength_low])
        if wavelength_high:
            calculate_transmission_builder.set_wavelength_high(
                [wavelength_high])
        if wavelength_step:
            calculate_transmission_builder.set_wavelength_step(wavelength_step)
        if wavelength_step_type:
            calculate_transmission_builder.set_wavelength_step_type(
                wavelength_step_type)
        if use_full_wavelength_range:
            calculate_transmission_builder.set_use_full_wavelength_range(
                use_full_wavelength_range)
        if wavelength_full_range_low:
            calculate_transmission_builder.set_wavelength_full_range_low(
                wavelength_full_range_low)
        if wavelength_full_range_high:
            calculate_transmission_builder.set_wavelength_full_range_high(
                wavelength_full_range_high)

        if prompt_peak_correction_min:
            calculate_transmission_builder.set_prompt_peak_correction_min(
                prompt_peak_correction_min)
        if prompt_peak_correction_max:
            calculate_transmission_builder.set_prompt_peak_correction_max(
                prompt_peak_correction_max)
        if prompt_peak_correction_min and prompt_peak_correction_max:
            calculate_transmission_builder.set_prompt_peak_correction_enabled(
                True)

        if background_TOF_general_start:
            calculate_transmission_builder.set_background_TOF_general_start(
                background_TOF_general_start)
        if background_TOF_general_stop:
            calculate_transmission_builder.set_background_TOF_general_stop(
                background_TOF_general_stop)
        if background_TOF_monitor_start:
            calculate_transmission_builder.set_background_TOF_monitor_start(
                background_TOF_monitor_start)
        if background_TOF_monitor_stop:
            calculate_transmission_builder.set_background_TOF_monitor_stop(
                background_TOF_monitor_stop)
        if background_TOF_roi_start:
            calculate_transmission_builder.set_background_TOF_roi_start(
                background_TOF_roi_start)
        if background_TOF_roi_stop:
            calculate_transmission_builder.set_background_TOF_roi_stop(
                background_TOF_roi_stop)

        if sample_fit_type:
            calculate_transmission_builder.set_Sample_fit_type(sample_fit_type)
        if sample_polynomial_order:
            calculate_transmission_builder.set_Sample_polynomial_order(
                sample_polynomial_order)
        if sample_wavelength_low:
            calculate_transmission_builder.set_Sample_wavelength_low(
                sample_wavelength_low)
        if sample_wavelength_high:
            calculate_transmission_builder.set_Sample_wavelength_high(
                sample_wavelength_high)

        if can_fit_type:
            calculate_transmission_builder.set_Can_fit_type(can_fit_type)
        if can_polynomial_order:
            calculate_transmission_builder.set_Can_polynomial_order(
                can_polynomial_order)
        if can_wavelength_low:
            calculate_transmission_builder.set_Can_wavelength_low(
                can_wavelength_low)
        if can_wavelength_high:
            calculate_transmission_builder.set_Can_wavelength_high(
                can_wavelength_high)
        calculate_transmission = calculate_transmission_builder.build()
        state.adjustment.calculate_transmission = calculate_transmission
        return state.property_manager
Ejemplo n.º 4
0
    def test_that_reduction_state_can_be_built(self):
        # Arrange
        facility = SANSFacility.ISIS
        data_builder = get_data_builder(facility)
        data_builder.set_sample_scatter("LOQ74044")
        data_info = data_builder.build()

        # Act
        builder = get_calculate_transmission_builder(data_info)
        self.assertTrue(builder)

        builder.set_prompt_peak_correction_min(12.0)
        builder.set_prompt_peak_correction_max(17.0)

        builder.set_incident_monitor(1)
        builder.set_default_incident_monitor(2)
        builder.set_transmission_monitor(3)
        builder.set_default_transmission_monitor(4)
        builder.set_transmission_radius_on_detector(1.)
        builder.set_transmission_roi_files(["sdfs", "sddfsdf"])
        builder.set_transmission_mask_files(["sdfs", "bbbbbb"])

        builder.set_rebin_type(RebinType.Rebin)
        builder.set_wavelength_low(1.5)
        builder.set_wavelength_high(2.7)
        builder.set_wavelength_step(0.5)
        builder.set_wavelength_step_type(RangeStepType.Lin)
        builder.set_use_full_wavelength_range(True)
        builder.set_wavelength_full_range_low(12.)
        builder.set_wavelength_full_range_high(24.)

        builder.set_background_TOF_general_start(1.4)
        builder.set_background_TOF_general_stop(34.4)
        builder.set_background_TOF_monitor_start({"1": 123, "2": 123})
        builder.set_background_TOF_monitor_stop({"1": 234, "2": 2323})
        builder.set_background_TOF_roi_start(1.4)
        builder.set_background_TOF_roi_stop(34.4)

        builder.set_Sample_fit_type(FitType.Linear)
        builder.set_Sample_polynomial_order(0)
        builder.set_Sample_wavelength_low(10.0)
        builder.set_Sample_wavelength_high(20.0)

        builder.set_Can_fit_type(FitType.Polynomial)
        builder.set_Can_polynomial_order(3)
        builder.set_Can_wavelength_low(10.0)
        builder.set_Can_wavelength_high(20.0)

        state = builder.build()

        # Assert
        self.assertTrue(state.prompt_peak_correction_min == 12.0)
        self.assertTrue(state.prompt_peak_correction_max == 17.0)

        self.assertTrue(state.incident_monitor == 1)
        self.assertTrue(state.default_incident_monitor == 2)
        self.assertTrue(state.transmission_monitor == 3)
        self.assertTrue(state.default_transmission_monitor == 4)
        self.assertTrue(state.transmission_radius_on_detector == 1.)
        self.assertTrue(state.transmission_roi_files == ["sdfs", "sddfsdf"])
        self.assertTrue(state.transmission_mask_files == ["sdfs", "bbbbbb"])

        self.assertTrue(state.rebin_type is RebinType.Rebin)
        self.assertTrue(state.wavelength_low == 1.5)
        self.assertTrue(state.wavelength_high == 2.7)
        self.assertTrue(state.wavelength_step == 0.5)
        self.assertTrue(state.wavelength_step_type is RangeStepType.Lin)
        self.assertTrue(state.use_full_wavelength_range is True)
        self.assertTrue(state.wavelength_full_range_low == 12.)
        self.assertTrue(state.wavelength_full_range_high == 24.)

        self.assertTrue(state.background_TOF_general_start == 1.4)
        self.assertTrue(state.background_TOF_general_stop == 34.4)
        self.assertTrue(len(set(state.background_TOF_monitor_start.items()) & set({"1": 123, "2": 123}.items())) == 2)
        self.assertTrue(len(set(state.background_TOF_monitor_stop.items()) & set({"1": 234, "2": 2323}.items())) == 2)
        self.assertTrue(state.background_TOF_roi_start == 1.4)
        self.assertTrue(state.background_TOF_roi_stop == 34.4)

        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].fit_type is FitType.Linear)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].polynomial_order == 0)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].wavelength_low == 10.)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].wavelength_high == 20.)

        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].fit_type is
                        FitType.Polynomial)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].polynomial_order == 3)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].wavelength_low == 10.)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].wavelength_high == 20.)
    def test_that_reduction_state_can_be_built(self):
        # Arrange
        facility = SANSFacility.ISIS
        file_information = SANSFileInformationMock(instrument=SANSInstrument.LOQ, run_number=74044)
        data_builder = get_data_builder(facility, file_information)
        data_builder.set_sample_scatter("LOQ74044")
        data_info = data_builder.build()

        # Act
        builder = get_calculate_transmission_builder(data_info)
        self.assertTrue(builder)

        builder.set_prompt_peak_correction_min(12.0)
        builder.set_prompt_peak_correction_max(17.0)

        builder.set_incident_monitor(1)
        builder.set_default_incident_monitor(2)
        builder.set_transmission_monitor(3)
        builder.set_default_transmission_monitor(4)
        builder.set_transmission_radius_on_detector(1.)
        builder.set_transmission_roi_files(["sdfs", "sddfsdf"])
        builder.set_transmission_mask_files(["sdfs", "bbbbbb"])

        builder.set_rebin_type(RebinType.Rebin)
        builder.set_wavelength_low([1.5])
        builder.set_wavelength_high([2.7])
        builder.set_wavelength_step(0.5)
        builder.set_wavelength_step_type(RangeStepType.Lin)
        builder.set_use_full_wavelength_range(True)
        builder.set_wavelength_full_range_low(12.)
        builder.set_wavelength_full_range_high(24.)

        builder.set_background_TOF_general_start(1.4)
        builder.set_background_TOF_general_stop(34.4)
        builder.set_background_TOF_monitor_start({"1": 123, "2": 123})
        builder.set_background_TOF_monitor_stop({"1": 234, "2": 2323})
        builder.set_background_TOF_roi_start(1.4)
        builder.set_background_TOF_roi_stop(34.4)

        builder.set_Sample_fit_type(FitType.Linear)
        builder.set_Sample_polynomial_order(0)
        builder.set_Sample_wavelength_low(10.0)
        builder.set_Sample_wavelength_high(20.0)

        builder.set_Can_fit_type(FitType.Polynomial)
        builder.set_Can_polynomial_order(3)
        builder.set_Can_wavelength_low(10.0)
        builder.set_Can_wavelength_high(20.0)

        state = builder.build()

        # Assert
        self.assertTrue(state.prompt_peak_correction_min == 12.0)
        self.assertTrue(state.prompt_peak_correction_max == 17.0)

        self.assertTrue(state.incident_monitor == 1)
        self.assertTrue(state.default_incident_monitor == 2)
        self.assertTrue(state.transmission_monitor == 3)
        self.assertTrue(state.default_transmission_monitor == 4)
        self.assertTrue(state.transmission_radius_on_detector == 1.)
        self.assertTrue(state.transmission_roi_files == ["sdfs", "sddfsdf"])
        self.assertTrue(state.transmission_mask_files == ["sdfs", "bbbbbb"])

        self.assertTrue(state.rebin_type is RebinType.Rebin)
        self.assertTrue(state.wavelength_low == [1.5])
        self.assertTrue(state.wavelength_high == [2.7])
        self.assertTrue(state.wavelength_step == 0.5)
        self.assertTrue(state.wavelength_step_type is RangeStepType.Lin)
        self.assertTrue(state.use_full_wavelength_range is True)
        self.assertTrue(state.wavelength_full_range_low == 12.)
        self.assertTrue(state.wavelength_full_range_high == 24.)

        self.assertTrue(state.background_TOF_general_start == 1.4)
        self.assertTrue(state.background_TOF_general_stop == 34.4)
        self.assertTrue(len(set(state.background_TOF_monitor_start.items()) & set({"1": 123, "2": 123}.items())) == 2)
        self.assertTrue(len(set(state.background_TOF_monitor_stop.items()) & set({"1": 234, "2": 2323}.items())) == 2)
        self.assertTrue(state.background_TOF_roi_start == 1.4)
        self.assertTrue(state.background_TOF_roi_stop == 34.4)

        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].fit_type is FitType.Linear)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].polynomial_order == 0)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].wavelength_low == 10.)
        self.assertTrue(state.fit[DataType.to_string(DataType.Sample)].wavelength_high == 20.)

        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].fit_type is
                        FitType.Polynomial)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].polynomial_order == 3)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].wavelength_low == 10.)
        self.assertTrue(state.fit[DataType.to_string(DataType.Can)].wavelength_high == 20.)