def test_filter_tasks(self): self.workbench.register(TaskManagerManifest()) plugin = self.workbench.get_plugin(u'hqc_meas.task_manager') core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.filter_tasks' tasks = core.invoke_command(com, {'filter': 'All'}, self) assert_equal(sorted(tasks), sorted(plugin.tasks)) tasks = core.invoke_command(com, {'filter': 'Python'}, self) assert_equal(sorted(tasks), sorted(plugin._py_tasks.keys())) tasks = core.invoke_command(com, {'filter': 'Template'}, self) assert_equal(sorted(tasks), sorted(plugin._template_tasks.keys())) # These two tests are sufficient to ensure that subclass tests works tasks = core.invoke_command(com, {'filter': 'Simple'}, self) assert_not_in('Complex', tasks) assert_in('Log', tasks) tasks = core.invoke_command(com, {'filter': 'Complex'}, self) assert_not_in('Log', tasks) assert_in('Complex', tasks) # Test the class attr filter tasks = core.invoke_command(com, {'filter': 'Loopable'}, self) assert_not_in('Definition', tasks) assert_in('Log', tasks)
def test_interface_views_request1(self): self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.interface_views_request' kwargs = {'interface_classes': ['MultiChannelVoltageSourceInterface']} views, miss = core.invoke_command(com, kwargs, self) assert_in('MultiChannelVoltageSourceInterface', views) assert_equal(miss, [])
def test_interfaces_request2(self): # Test requesting interfaces using the interface class name self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.interfaces_request' kwargs = {'interfaces': ['MultiChannelVoltageSourceInterface']} inter, miss = core.invoke_command(com, kwargs, self) assert_equal(inter.keys(), ['MultiChannelVoltageSourceInterface'])
def test_interface_request1(self): # Test requesting interfaces using the task class name self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.interfaces_request' interfaces, miss = core.invoke_command( com, {'tasks': ['SetDCVoltageTask', 'XXXX']}, self) assert_equal(interfaces.keys(), ['SetDCVoltageTask']) assert_equal(miss, ['XXXX'])
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(TaskManagerManifest()) self.root = RootTask(should_stop=Event(), should_pause=Event()) self.task = SaveArrayTask(task_name='Test') self.root.children_task.append(self.task)
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(DependenciesManifest()) self.workbench.register(TaskManagerManifest()) self.workbench.register(MeasureManifest()) self.workbench.register(TestSuiteManifest())
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(TaskManagerManifest()) self.root = RootTask(should_stop=Event(), should_pause=Event()) self.task = self.excep_class(task_name='Test', condition='rr') self.root.children_task.append(self.task)
def test_tasks_request1(self): # Test requesting a task using its name. self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.tasks_request' tasks, miss = core.invoke_command( com, {'tasks': ['Complex', 'Sleep', 'XXXX']}, self) from hqc_meas.tasks.api import ComplexTask assert_equal(sorted(tasks.keys()), sorted(['Complex', 'Sleep'])) assert_in(ComplexTask, tasks.values()) assert_equal(miss, ['XXXX'])
def test_config_request_build1(self): self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.config_request' conf, view = core.invoke_command(com, {'task': 'Log'}, self) assert_equal(type(conf).__name__, 'PyConfigTask') conf.task_name = 'Test' assert_equal(conf.config_ready, True) task = conf.build_task() assert_equal(task.task_name, 'Test')
def test_load_all(self): self.workbench.register(TaskManagerManifest()) plugin = self.workbench.get_plugin(u'hqc_meas.task_manager') with plugin.suppress_notifications(): plugin.views_loading = [] plugin.tasks_loading = [] plugin.notify('tasks_loading', {}) if plugin.report(): raise SkipTest(plugin.report())
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(InstrManagerManifest()) self.workbench.register(TaskManagerManifest()) self.root = RootTask(should_stop=Event(), should_pause=Event()) self.task = MeasDCVoltageTask(task_name='Test') self.root.children_task.append(self.task) self.root.run_time['drivers'] = {'Test': InstrHelper}
def test_views_request(self): self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.views_request' with enaml.imports(): from hqc_meas.tasks.views.base_task_views import ComplexView views, miss = core.invoke_command(com, {'task_classes': ['ComplexTask']}, self) assert_in('ComplexTask', views) assert_equal(views['ComplexTask'], ComplexView) assert_equal(miss, [])
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(UIManifest()) self.workbench.register(HqcAppManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(LogManifest()) self.workbench.register(TaskManagerManifest()) self.workbench.register(InstrManagerManifest()) self.workbench.register(MeasureManifest()) self.workbench.register(TestSuiteManifest())
def test_config_request_build2(self): self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.config_request' conf, view = core.invoke_command(com, {'task': 'Template'}, self) assert_equal(type(conf).__name__, 'IniConfigTask') conf.task_name = 'Test' assert_equal(conf.config_ready, True) task = conf.build_task() assert_equal(task.task_name, 'Test') assert_equal(len(task.children_task), 1) task2 = task.children_task[0] assert_equal(task2.task_name, 'a') assert_equal(task2.task_class, 'LogTask')
def test_init(self): self.workbench.register(TaskManagerManifest()) plugin = self.workbench.get_plugin(u'hqc_meas.task_manager') # Testing task explorations. assert_in('Complex', plugin.tasks) assert_not_in('Instr', plugin.tasks) assert_in('Log', plugin.tasks) assert_in('Definition', plugin.tasks) assert_in('Sleep', plugin.tasks) # Testing interface exploration assert_in('SetDCVoltageTask', plugin._task_interfaces) assert_not_equal(plugin._task_interfaces['SetDCVoltageTask'], []) # Testing templates assert_in('Template', plugin.tasks)
def test_template_observation(self): self.workbench.register(TaskManagerManifest()) plugin = self.workbench.get_plugin(u'hqc_meas.task_manager') assert_in('Template', plugin.tasks) template_path = os.path.join(self.test_dir, 'temp_templates') prof = ConfigObj(os.path.join(template_path, 'test.ini')) prof.write() from time import sleep sleep(0.5) try: assert_in('Test', plugin.tasks) assert_in('Template', plugin.tasks) finally: os.remove(os.path.join(template_path, 'test.ini')) sleep(0.5) assert_not_in('Test', plugin.tasks) assert_in('Template', plugin.tasks)
def test_config_request_build3(self): self.workbench.register(TaskManagerManifest()) core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.task_manager.config_request' plugin = self.workbench.get_plugin(u'hqc_meas.task_manager') if u'tasks.tasks_logic' in plugin.tasks_loading: aux = plugin.tasks_loading[:] aux.remove(u'tasks.tasks_logic') plugin.tasks_loading = aux conf, view = core.invoke_command(com, {'task': 'Loop'}, self) assert_equal(type(conf).__name__, 'LoopConfigTask') conf.task_name = 'Test' conf.subtask = 'Log' assert_equal(conf.config_ready, True) task = conf.build_task() assert_equal(task.task_name, 'Test')
def setup(self): self.workbench = Workbench() self.workbench.register(CoreManifest()) self.workbench.register(UIManifest()) self.workbench.register(HqcAppManifest()) self.workbench.register(StateManifest()) self.workbench.register(PreferencesManifest()) self.workbench.register(LogManifest()) self.workbench.register(DependenciesManifest()) self.workbench.register(TaskManagerManifest()) self.workbench.register(InstrManagerManifest()) self.workbench.register(MeasureManifest()) self.workbench.register(TestSuiteManifest()) # Adding by hand the false instr task. plugin = self.workbench.get_plugin('hqc_meas.task_manager') plugin._py_tasks['False instr'] = FalseInstrTask
def test_collect_dependencies(self): # Test collecting build dependencies. self.workbench.register(TaskManagerManifest()) from hqc_meas.tasks.api import RootTask, ComplexTask from hqc_meas.tasks.tasks_util.log_task import LogTask aux = [LogTask(task_name='r')] root = RootTask(task_name='root') root.children_task = [ ComplexTask(task_name='complex', children_task=aux), LogTask(task_name='t') ] core = self.workbench.get_plugin(u'enaml.workbench.core') com = u'hqc_meas.dependencies.collect_dependencies' res, build, run = core.invoke_command(com, {'obj': root}, core) assert_true(res) assert_in('tasks', build) assert_equal(sorted(['LogTask', 'ComplexTask']), sorted(build['tasks'].keys())) assert_not_in('interfaces', build) assert_false(run)
choices=WORKSPACES) parser.add_argument("-s", "--nocapture", help="Don't capture stdout/stderr", action='store_false') args = parser.parse_args() workbench = Workbench() workbench.register(CoreManifest()) workbench.register(UIManifest()) workbench.register(HqcAppManifest()) workbench.register(StateManifest()) workbench.register(PreferencesManifest()) workbench.register(LogManifest()) workbench.register(DependenciesManifest()) workbench.register(TaskManagerManifest()) workbench.register(InstrManagerManifest()) workbench.register(MeasureManifest()) workbench.register(DebuggerManifest()) core = workbench.get_plugin('enaml.workbench.core') core.invoke_command('hqc_meas.logging.start_logging', {'std': args.nocapture}, workbench) core.invoke_command('enaml.workbench.ui.select_workspace', {'workspace': WORKSPACES[args.workspace]}, workbench) ui = workbench.get_plugin(u'enaml.workbench.ui') ui.show_window() ui.window.maximize() ui.start_application()