Skip to content
Snippets Groups Projects
Commit fc9ece08 authored by Stefano Borini's avatar Stefano Borini
Browse files

Transported UI hooks probe and integrated it

parent 1b931729
No related branches found
No related tags found
1 merge request!105Introduced interface for FactoryRegistryPlugin
......@@ -6,6 +6,7 @@ from .mco import ProbeMCOFactory
from .kpi_calculator import ProbeKPICalculatorFactory
from .data_source import ProbeDataSourceFactory
from .notification_listener import ProbeNotificationListenerFactory
from .ui_hooks import ProbeUIHooksFactory
@provides(IFactoryRegistryPlugin)
......@@ -14,6 +15,7 @@ class ProbeFactoryRegistryPlugin(HasStrictTraits):
kpi_calculator_factories = List()
data_source_factories = List()
notification_listener_factories = List()
ui_hooks_factories = List()
def _mco_factories_default(self):
return [ProbeMCOFactory(None)]
......@@ -27,6 +29,9 @@ class ProbeFactoryRegistryPlugin(HasStrictTraits):
def _notification_listener_factories_default(self):
return [ProbeNotificationListenerFactory(None)]
def _ui_hooks_factories_default(self):
return [ProbeUIHooksFactory(None)]
def data_source_factory_by_id(self, id):
for ds in self.data_source_factories:
if ds.id == id:
......@@ -63,3 +68,4 @@ class ProbeFactoryRegistryPlugin(HasStrictTraits):
return nl
raise KeyError(id)
try:
import mock
except ImportError:
from unittest import mock
from envisage.api import Plugin
from traits.api import Bool
from force_bdss.api import BaseUIHooksFactory, BaseUIHooksManager
class ProbeUIHooksManager(BaseUIHooksManager):
before_execution_called = Bool()
after_execution_called = Bool()
before_save_called = Bool()
# Set this one to raise an exception in the methods
before_execution_raises = Bool(False)
after_execution_raises = Bool(False)
before_save_raises = Bool(False)
def before_execution(self, task):
self.before_execution_called = True
if self.before_execution_raises:
raise Exception("Boom")
def after_execution(self, task):
self.after_execution_called = True
if self.after_execution_raises:
raise Exception("Boom")
def before_save(self, task):
self.before_save_called = True
if self.before_save_raises:
raise Exception("Boom")
class ProbeUIHooksFactory(BaseUIHooksFactory):
create_ui_hooks_manager_raises = Bool()
def __init__(self, plugin=None, *args, **kwargs):
if plugin is None:
plugin = mock.Mock(Plugin)
super(ProbeUIHooksFactory, self).__init__(
plugin=plugin, *args, **kwargs)
def create_ui_hooks_manager(self):
if self.create_ui_hooks_manager_raises:
raise Exception("Boom")
return ProbeUIHooksManager(self)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment