Source code for microscope_automation.settings.test_zen_experiment

"""
Test settings in ZEN experiment
Created on Aug 17, 2018

@author: winfriedw
"""


[docs]def current_z_set(settings): """Test if Focus Strategy for z-stack acquisition is set to CurrentZ. Input: settings: FocusSetup part of ZEN XML settings tree. Output: is_valid: True if all instances FocusZStackMode are set to CurrentZ """ z_stack_modes = settings.findall(".//FocusZStackMode") for setting in z_stack_modes: if setting.text != "CurrentZ": return False return True
[docs]def test_FocusSetup(experiment_object, verbose=True): """Test if all focus settings are correct. Input: experiment_object: object of class hardware.Experiment verbose: if verbose == True print debug messages Output: is_valid: True, if focus settings are valid """ is_valid = True if not experiment_object.validate_experiment(): is_valid = False if verbose: print( ( "test_FocusSetup: Experiment {} does not exist".format( experiment_object.experiment_path ) ) ) focus_settings = experiment_object.get_focus_settings() # test if at least one setup exists if not focus_settings: is_valid = False if verbose: print( ( "test_FocusSetup: Experiment {} has no FocusSetup".format( experiment_object.experiment_path ) ) ) # Test only activated setups for settings in focus_settings: if not current_z_set(settings): is_valid = False if verbose: print( ( "test_FocusSetup: In experiment {} Focus Strategy of at least one z-stack is not set to CurrentZ".format( # noqa experiment_object.experiment_path ) ) ) return is_valid