Example #1
0
 def test_dark_in_prun_cannot_find_a_valid_dark(self):
     # case 2: can't find a qualified dark and test if md got updated
     time_now = time.time()
     self.bt.set_wavelength(0.18448)
     # build the dark yml
     dark_scan_list = []
     dark_uid = str(uuid.uuid4())
     dark_uid2 = str(uuid.uuid4())
     dark_scan_list.append((dark_uid, 0.3, time_now - 2000))
     dark_scan_list.append((dark_uid2, 0.1, time_now - 200))
     with open(glbl.dk_yaml, 'w') as f:
         yaml.dump(dark_scan_list, f)
     test_list = _read_dark_yaml()
     self.assertEqual(test_list, dark_scan_list)
     # none with the right exposure
     scanplan = ScanPlan('ct', {'exposure': 0.01}, shutter=False)
     prun(self.sa, scanplan)
     self.assertTrue('sc_dk_field_uid' in glbl.xpdRE.call_args_list[-1][1])
     self.assertFalse(
         glbl.xpdRE.call_args_list[-1][1]['sc_dk_field_uid'] == dark_uid2)
     # Second one has the right exposure time but expires
     glbl.dk_window = 1.
     scanplan = ScanPlan('ct', {'exposure': 0.1}, shutter=False)
     prun(self.sa, scanplan)
     self.assertTrue('sc_dk_field_uid' in glbl.xpdRE.call_args_list[-1][1])
     self.assertFalse(
         glbl.xpdRE.call_args_list[-1][1]['sc_dk_field_uid'] == dark_uid2)
 def test_dark_in_prun_cannot_find_a_valid_dark(self):
     # case 2: can't find a qualified dark and test if md got updated
     time_now = time.time()
     self.bt.set_wavelength(0.18448)
     # build the dark yml
     dark_scan_list = []
     dark_uid = str(uuid.uuid4())
     dark_uid2 = str(uuid.uuid4())
     dark_scan_list.append((dark_uid, 0.3, time_now-2000))
     dark_scan_list.append((dark_uid2, 0.1, time_now-200))
     with open (glbl.dk_yaml, 'w') as f:
         yaml.dump(dark_scan_list, f)
     test_list = _read_dark_yaml()
     self.assertEqual(test_list,dark_scan_list)
     # none with the right exposure
     scanplan = ScanPlan('ct', {'exposure':0.01}, shutter=False)
     prun(self.sa, scanplan)
     self.assertTrue('sc_dk_field_uid' in glbl.xpdRE.call_args_list[-1][1])
     self.assertFalse(glbl.xpdRE.call_args_list[-1][1]['sc_dk_field_uid'] == dark_uid2)
     # Second one has the right exposure time but expires
     glbl.dk_window = 1.
     scanplan = ScanPlan('ct', {'exposure':0.1}, shutter=False)
     prun(self.sa, scanplan)
     self.assertTrue('sc_dk_field_uid' in glbl.xpdRE.call_args_list[-1][1])
     self.assertFalse(glbl.xpdRE.call_args_list[-1][1]['sc_dk_field_uid'] == dark_uid2)
Example #3
0
    def test_dark_in_prun_can_find_a_valid_dark(self):
        # case 1: find a qualified dark and test if md got updated
        time_now = time.time()
        self.bt.set_wavelength(0.18448)
        light_cnt_time = 0.01

        dark_scan_list = []
        dark_uid = str(uuid.uuid4())
        dark_scan_list.append((dark_uid, light_cnt_time, time_now-600))
        with open (glbl.dk_yaml, 'w') as f:
            yaml.dump(dark_scan_list, f)
        test_list = _read_dark_yaml()
        self.assertEqual(test_list,dark_scan_list)
        scanplan = ScanPlan('ctTest', 'ct', {'exposure':light_cnt_time}, shutter=False)
        prun(self.sa, scanplan)
        self.assertEqual(scanplan.md['sp_params']['dk_field_uid'], dark_uid)
Example #4
0
    def test_dark_in_prun_can_find_a_valid_dark(self):
        # case 1: find a qualified dark and test if md got updated
        time_now = time.time()
        self.bt.set_wavelength(0.18448)
        light_cnt_time = 0.01

        dark_scan_list = []
        dark_uid = str(uuid.uuid4())
        dark_scan_list.append((dark_uid, light_cnt_time, time_now - 600))
        with open(glbl.dk_yaml, 'w') as f:
            yaml.dump(dark_scan_list, f)
        test_list = _read_dark_yaml()
        self.assertEqual(test_list, dark_scan_list)
        scanplan = ScanPlan('ct', {'exposure': light_cnt_time}, shutter=False)
        prun(self.sa, scanplan)
        self.assertTrue('sc_dk_field_uid' in glbl.xpdRE.call_args_list[-1][1])
        self.assertTrue(
            glbl.xpdRE.call_args_list[-1][1]['sc_dk_field_uid'] == dark_uid)
Example #5
0
    def test_dark_in_prun_cannot_find_a_valid_dark(self):
        # case 2: can't find a qualified dark and test if md got updated
        time_now = time.time()
        self.bt.set_wavelength(0.18448)
        # build the dark yml
        dark_scan_list = []
        dark_uid = str(uuid.uuid4())
        dark_uid2 = str(uuid.uuid4())
        dark_scan_list.append((dark_uid, 0.3, time_now-2000))
        dark_scan_list.append((dark_uid2, 0.3, time_now-200))
        with open (glbl.dk_yaml, 'w') as f:
            yaml.dump(dark_scan_list, f)
        test_list = _read_dark_yaml()
        self.assertEqual(test_list,dark_scan_list)

        # none with the right exposure
        scanplan = ScanPlan('ctTest', 'ct', {'exposure':0.01}, shutter=False)
        prun(self.sa, scanplan)
        self.assertNotEqual(scanplan.md['sp_params']['dk_field_uid'], dark_uid)
        # Second one has the right right exposure time
        glbl.dk_window = 1.
        scanplan = ScanPlan('ctTest', 'ct', {'exposure':0.01}, shutter=False)
        prun(self.sa, scanplan)
        self.assertNotEqual(scanplan.md['sp_params']['dk_field_uid'], dark_uid2)        
Example #6
0
 def test_read_dark_yaml(self):
     # test if _read_dark_yaml captures exception as we hope
     self.assertTrue(os.path.isfile(
         glbl.dk_yaml))  # make sure it exit after _start_beamtime()
     os.remove(glbl.dk_yaml)
     self.assertRaises(SystemExit, lambda: _read_dark_yaml())
Example #7
0
 def test_read_dark_yaml(self):
     # test if _read_dark_yaml captures exception as we hope
     self.assertTrue(os.path.isfile(glbl.dk_yaml)) # make sure it exit after _start_beamtime()
     os.remove(glbl.dk_yaml)
     self.assertRaises(SystemExit, lambda: _read_dark_yaml())