def test_enqueue_measure1(self): # Test enqueueing a measure passing the tests using no instruments. core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask(default_path=self.test_dir) plugin.edited_measure = measure res = plugin.workspace.enqueue_measure(plugin.edited_measure) assert_true(res) assert_false(measure.root_task.run_time) assert_true(plugin.enqueued_measures) en_meas = plugin.enqueued_measures[0] assert_is_not(en_meas, measure) assert_equal(en_meas.status, 'READY') assert_equal(en_meas.infos, 'The measure is ready to be performed by an engine.') assert_in('build_deps', en_meas.store) assert_not_in('profiles', en_meas.store)
def test_enqueue_measure4(self): # Test enqueueing a measure passing the tests using instruments. core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') false_instr_user = FalseInstrTask(selected_profile=' dummy ', selected_driver='PanelTestDummy') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask(default_path=self.test_dir) measure.root_task.children_task = [false_instr_user] plugin.edited_measure = measure res = plugin.workspace.enqueue_measure(plugin.edited_measure) assert_true(res) assert_false(measure.root_task.run_time) assert_true(plugin.enqueued_measures) en_meas = plugin.enqueued_measures[0] assert_is_not(en_meas, measure) assert_equal(en_meas.status, 'READY') assert_equal(en_meas.infos, 'The measure is ready to be performed by an engine.') assert_in('build_deps', en_meas.store) assert_equal([' dummy '], en_meas.store['profiles']) assert_in('drivers', en_meas.root_task.run_time) instr_plugin = self.workbench.get_plugin('hqc_meas.instr_manager') assert_in(' dummy ', instr_plugin.available_profiles)
def setup(self): self.root = RootTask() database = self.root.task_database database.set_value('root', 'val1', 1) database.create_node('root', 'node1') database.set_value('root/node1', 'val2', 10.0) database.add_access_exception('root', 'val2', 'root/node1')
def test_plugin_find_next_measure3(self): """ Test plugin.find_next_measure when no measures can be sent. """ plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure1 = Measure(plugin=plugin, name='Test1') measure1.root_task = RootTask() measure1.status = 'SKIPPED' plugin.enqueued_measures.append(measure1) measure2 = Measure(plugin=plugin, name='Test2') measure2.root_task = RootTask() measure2.status = 'EDITING' plugin.enqueued_measures.append(measure2) meas = plugin.find_next_measure() assert_is(None, meas)
def test_find_view1(self): """ Test finding a view for an existing task. """ editor = StandardEditor(workbench=self.workbench) editor.selected_task = None editor.selected_task = RootTask() assert_is_instance(editor._internal.current_view, RootView)
def test_plugin_find_next_measure1(self): """ Test plugin.find_next_measure, first measure is ok. """ plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask() plugin.enqueued_measures.append(measure) meas = plugin.find_next_measure() assert_is(measure, meas)
def test_plugin_find_next_measure2(self): """ Test plugin.find_next_measure when measures should be skipped. """ plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure1 = Measure(plugin=plugin, name='Test1') measure1.root_task = RootTask() measure1.status = 'SKIPPED' plugin.enqueued_measures.append(measure1) measure2 = Measure(plugin=plugin, name='Test2') measure2.root_task = RootTask() measure2.status = 'EDITING' plugin.enqueued_measures.append(measure2) measure3 = Measure(plugin=plugin, name='Test3') measure3.root_task = RootTask() measure3.status = 'READY' plugin.enqueued_measures.append(measure3) meas = plugin.find_next_measure() assert_is(measure3, meas)
def _create_measure(self, plugin, instr=False): """ Create a measure. """ measure = Measure(plugin=plugin, name='Test1') measure.root_task = RootTask(default_path=self.test_dir) if instr: false_instr_user = FalseInstrTask(selected_profile=' dummy ', selected_driver='PanelTestDummy') measure.root_task.children_task = [false_instr_user] measure.status = 'READY' monitor_decl = plugin.monitors[u'monitor1'] measure.add_monitor(monitor_decl.id, monitor_decl.factory(monitor_decl, self.workbench)) return measure
def _create_measure(self, plugin): """ Create a measure. """ measure = Measure(plugin=plugin, name='Test1') measure.root_task = RootTask(default_path=self.test_dir) children = [ SleepTask(task_name='sleep1', time=1), LogTask(task_name='print', message='test'), SleepTask(task_name='sleep2', time=0.1) ] measure.root_task.children_task.extend(children) measure.status = 'READY' monitor_decl = plugin.monitors[u'monitor1'] measure.add_monitor(monitor_decl.id, monitor_decl.factory(monitor_decl, self.workbench)) return measure
def test_measure_editor_dialog2(self): # Test that everything goes well in the absence of build_deps core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask() ed = MeasureEditorDialog(measure=measure, workspace=plugin.workspace) ed.show() process_app_events() ed.close() process_app_events() assert_not_in('build_deps', measure.store) close_all_windows()
def test_measure_editor_dialog1(self): # Test that the build_deps are correctly destroyed when closing. core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask() measure.store['build_deps'] = 25 ed = MeasureEditorDialog(measure=measure, workspace=plugin.workspace) ed.show() process_app_events() ed.close() process_app_events() assert_not_in('build_deps', measure.store) close_all_windows()
def test_enqueue_measure2(self): # Test enqueueing a measure failing the tests using no instruments. core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask() plugin.edited_measure = measure res = plugin.workspace.enqueue_measure(plugin.edited_measure) assert_false(res) assert_false(measure.root_task.run_time) assert_false(plugin.enqueued_measures) close_all_windows()
def test_enqueue_measure3(self): # Test enqueueing a measure passing the test but emitting warnings. # As there is no event loop running the exec_ is not blocking. core = self.workbench.get_plugin(u'enaml.workbench.core') cmd = u'enaml.workbench.ui.select_workspace' core.invoke_command(cmd, {'workspace': u'hqc_meas.measure.workspace'}, self) plugin = self.workbench.get_plugin(u'hqc_meas.measure') measure = Measure(plugin=plugin, name='Test') measure.root_task = RootTask() plugin.edited_measure = measure res = plugin.workspace.enqueue_measure(plugin.edited_measure) assert_false(res) assert_false(measure.root_task.run_time) assert_false(plugin.enqueued_measures) close_all_windows()