diff --git a/force_bdss/data_sources/i_data_source_factory.py b/force_bdss/data_sources/i_data_source_factory.py index 7cbaa3b8853c2b7a8877a411c97d4e40fb167a7f..9af71bf4c17e7d3cf3c1cc9ecb6d80a70a74dd44 100644 --- a/force_bdss/data_sources/i_data_source_factory.py +++ b/force_bdss/data_sources/i_data_source_factory.py @@ -1,9 +1,6 @@ from envisage.api import Plugin from traits.api import Interface, String, Instance, Type -from force_bdss.data_sources.base_data_source import BaseDataSource -from force_bdss.data_sources.base_data_source_model import BaseDataSourceModel - class IDataSourceFactory(Interface): """Envisage required interface for the BaseDataSourceFactory. @@ -15,9 +12,13 @@ class IDataSourceFactory(Interface): name = String() - data_source_class = Type(BaseDataSource) + data_source_class = Type( + "force_bdss.data_sources.base_data_source.BaseDataSource" + ) - model_class = Type(BaseDataSourceModel) + model_class = Type( + "force_bdss.data_sources.base_data_source_model.BaseDataSourceModel" + ) plugin = Instance(Plugin) diff --git a/force_bdss/kpi/i_kpi_calculator_factory.py b/force_bdss/kpi/i_kpi_calculator_factory.py index dc2a1633ac13e8b0ea2691cce51d735ca4305c7e..2877217a97d71be232cdd883dc9b2561482e7369 100644 --- a/force_bdss/kpi/i_kpi_calculator_factory.py +++ b/force_bdss/kpi/i_kpi_calculator_factory.py @@ -1,9 +1,6 @@ from traits.api import Interface, String, Instance, Type from envisage.plugin import Plugin -from force_bdss.kpi.base_kpi_calculator import BaseKPICalculator -from force_bdss.kpi.base_kpi_calculator_model import BaseKPICalculatorModel - class IKPICalculatorFactory(Interface): """Envisage required interface for the BaseKPICalculatorFactory. @@ -15,9 +12,13 @@ class IKPICalculatorFactory(Interface): name = String() - kpi_calculator_class = Type(BaseKPICalculator) + kpi_calculator_class = Type( + "force_bdss.kpi.base_kpi_calculator.BaseKPICalculator" + ) - model_class = Type(BaseKPICalculatorModel) + model_class = Type( + "force_bdss.kpi.base_kpi_calculator_model.BaseKPICalculatorModel" + ) plugin = Instance(Plugin) diff --git a/force_bdss/mco/i_mco_factory.py b/force_bdss/mco/i_mco_factory.py index 9ddfeb76f7c0c1f2b94e59c6f92ddcded9be1a8a..bc58e150723a6447f3c78f115199db02497786c3 100644 --- a/force_bdss/mco/i_mco_factory.py +++ b/force_bdss/mco/i_mco_factory.py @@ -1,10 +1,6 @@ from traits.api import Interface, String, Instance, Type from envisage.plugin import Plugin -from force_bdss.mco.base_mco import BaseMCO -from force_bdss.mco.base_mco_communicator import BaseMCOCommunicator -from force_bdss.mco.base_mco_model import BaseMCOModel - class IMCOFactory(Interface): """Interface for the BaseMCOFactory. @@ -16,11 +12,17 @@ class IMCOFactory(Interface): name = String() - optimizer_class = Type(BaseMCO) + optimizer_class = Type( + "force_bdss.mco.base_mco.BaseMCO" + ) - model_class = Type(BaseMCOModel) + model_class = Type( + "force_bdss.mco.base_mco_communicator.BaseMCOCommunicator" + ) - communicator_class = Type(BaseMCOCommunicator) + communicator_class = Type( + "force_bdss.mco.base_mco_model.BaseMCOModel" + ) plugin = Instance(Plugin) diff --git a/force_bdss/mco/parameters/base_mco_parameter_factory.py b/force_bdss/mco/parameters/base_mco_parameter_factory.py index 6ea3ceba0700860028b65a2a17b9b6065dbb228c..cd8751b456eb41d04b6748f6b3f6b8001a061e97 100644 --- a/force_bdss/mco/parameters/base_mco_parameter_factory.py +++ b/force_bdss/mco/parameters/base_mco_parameter_factory.py @@ -1,7 +1,5 @@ from traits.api import HasStrictTraits, String, Type, Instance -from ..base_mco_factory import BaseMCOFactory - class BaseMCOParameterFactory(HasStrictTraits): """Factory that produces the model instance of a given BASEMCOParameter @@ -13,7 +11,7 @@ class BaseMCOParameterFactory(HasStrictTraits): """ #: A reference to the MCO factory this parameter factory lives in. - mco_factory = Instance(BaseMCOFactory) + mco_factory = Instance('force_bdss.mco.base_mco_factory.BaseMCOFactory') #: A unique string identifying the parameter id = String() @@ -25,7 +23,9 @@ class BaseMCOParameterFactory(HasStrictTraits): description = String("Undefined parameter") # The model class to instantiate when create_model is called. - model_class = Type('BaseMCOParameter') + model_class = Type( + "force_bdss.mco.parameters.base_mco_parameter.BaseMCOParameter" + ) def __init__(self, mco_factory, *args, **kwargs): self.mco_factory = mco_factory diff --git a/force_bdss/mco/parameters/tests/test_base_mco_parameter_factory.py b/force_bdss/mco/parameters/tests/test_base_mco_parameter_factory.py index 4c3a0ab8d3965bfaf6513673a2e7c14bbac06aa2..04206d7c1de03727d249fdcf9ca4a8823a26e677 100644 --- a/force_bdss/mco/parameters/tests/test_base_mco_parameter_factory.py +++ b/force_bdss/mco/parameters/tests/test_base_mco_parameter_factory.py @@ -1,5 +1,7 @@ import unittest +from envisage.plugin import Plugin + from force_bdss.mco.base_mco_factory import BaseMCOFactory try: @@ -25,9 +27,14 @@ class DummyMCOParameterFactory(BaseMCOParameterFactory): model_class = DummyMCOParameter +class DummyMCOFactory(BaseMCOFactory): + pass + + class TestBaseMCOParameterFactory(unittest.TestCase): def test_initialization(self): - factory = DummyMCOParameterFactory(mock.Mock(spec=BaseMCOFactory)) + factory = DummyMCOParameterFactory( + mco_factory=BaseMCOFactory(plugin=mock.Mock(spec=Plugin))) model = factory.create_model({"x": 42}) self.assertIsInstance(model, DummyMCOParameter) self.assertEqual(model.x, 42) diff --git a/force_bdss/notification_listeners/i_notification_listener_factory.py b/force_bdss/notification_listeners/i_notification_listener_factory.py index 056dda06c43fb55142dd4b92a028317204b2f619..3f6a07bf5d5821972b968578485a4f14fa9e3fb9 100644 --- a/force_bdss/notification_listeners/i_notification_listener_factory.py +++ b/force_bdss/notification_listeners/i_notification_listener_factory.py @@ -1,12 +1,6 @@ -from traits.api import Interface, String, Instance +from traits.api import Interface, String, Instance, Type from envisage.plugin import Plugin -from force_bdss.notification_listeners.base_notification_listener import \ - BaseNotificationListener -from force_bdss.notification_listeners.base_notification_listener_model \ - import \ - BaseNotificationListenerModel - class INotificationListenerFactory(Interface): """Envisage required interface for the BaseNotificationListenerFactory. @@ -18,9 +12,15 @@ class INotificationListenerFactory(Interface): name = String() - listener_class = Instance(BaseNotificationListener) + listener_class = Type( + "force_bdss.notification_listeners" + ".base_notification_listener.BaseNotificationListener" + ) - model_class = Instance(BaseNotificationListenerModel) + model_class = Type( + "force_bdss.notification_listeners" + ".base_notification_listener_model.BaseNotificationListenerModel" + ) plugin = Instance(Plugin) diff --git a/force_bdss/ui_hooks/i_ui_hooks_factory.py b/force_bdss/ui_hooks/i_ui_hooks_factory.py index c1a203c4d0380eb869393cccb9b276285df89da7..f702a96071b017c4e6f173a178295b3d8867b447 100644 --- a/force_bdss/ui_hooks/i_ui_hooks_factory.py +++ b/force_bdss/ui_hooks/i_ui_hooks_factory.py @@ -1,8 +1,6 @@ -from traits.api import Interface, String, Instance +from traits.api import Interface, String, Instance, Type from envisage.plugin import Plugin -from force_bdss.ui_hooks.base_ui_hooks_manager import BaseUIHooksManager - class IUIHooksFactory(Interface): """Envisage required interface for the BaseUIHooksFactory. @@ -14,7 +12,9 @@ class IUIHooksFactory(Interface): name = String() - ui_hooks_manager_class = Instance(BaseUIHooksManager) + ui_hooks_manager_class = Type( + "force_bdss.ui_hooks.base_ui_hooks_manager.BaseUIHooksManager" + ) plugin = Instance(Plugin)