def activate(self): super(StatusIconPlugin, self).activate() graph.register_instance(TrayIcon, self) connect_events(self.menu) self._show_if_session_is_running()
def test_should_unregister_tray_icon_provider(self, mock_indicator): plugin = self.make_indicator() graph.register_instance(TrayIcon, plugin) plugin.deactivate() self.assertNotIn(TrayIcon, graph.providers.keys())
def setup_function(function): graph.providers.clear() graph.register_instance('tomate.session', Mock()) graph.register_instance('trayicon.menu', Mock()) Events.Session.receivers.clear() Events.Timer.receivers.clear() Events.View.receivers.clear()
def make_indicator(self): from indicator_plugin import IndicatorPlugin graph.providers.clear() graph.register_instance("tomate.config", Mock(**{"get_icon_paths.return_value": [""]})) graph.register_instance("tomate.view", Mock()) return IndicatorPlugin()
def config(graph): parent = os.path.dirname(os.path.dirname(__file__)) icon_path = os.path.join( parent, 'data/icons/hicolor/16x16/apps/tomate-plugin.png') mock_config = Mock(**{ 'get_int.return_value': 25, 'get_icon_path.return_value': icon_path }) graph.register_instance('tomate.config', mock_config) return mock_config
def test_module(self): from tomate.timer import TimerProvider, Timer from tomate.graph import graph self.assertEqual(['tomate.timer'], TimerProvider.providers.keys()) TimerProvider().add_to(graph) provider = graph.providers['tomate.timer'] self.assertIsInstance(provider, FactoryProvider) self.assertEqual(provider.scope, SingletonScope) self.assertEqual(provider.dependencies, {'signals': 'tomate.signals'}) graph.register_instance('tomate.signals', Mock()) self.assertIsInstance(graph.get('tomate.timer'), Timer)
def test_preference_module(): config = Mock(**{'get_int.return_value': 25}) graph.register_instance('tomate.config', config) graph.register_factory('tomate.plugin', Mock) graph.register_factory('view.preference.extension', ExtensionStack) graph.register_factory('view.preference.duration', TimerDurationStack) providers = [ 'view.preference', 'view.preference.duration', 'view.preference.extension', ] assert sorted(PreferenceDialogModule.providers.keys()) == providers PreferenceDialogModule().add_to(graph) # Extension Stack provider = graph.providers['view.preference.extension'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == { 'config': 'tomate.config', 'plugin': 'tomate.plugin' } # Duration Stack provider = graph.providers['view.preference.duration'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == {'config': 'tomate.config'} # Preference Dialog provider = graph.providers['view.preference'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == { 'extension': 'view.preference.extension', 'duration': 'view.preference.duration' } preference = graph.get('view.preference') assert isinstance(preference, PreferenceDialog)
def test_module(): assert list(AppmenuModule.providers.keys()) == ['view.appmenu'] AppmenuModule().add_to(graph) provider = graph.providers['view.appmenu'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == {'menu': 'view.menu'} menu = Mock(widget=Gtk.Menu()) graph.register_instance('view.menu', menu) assert isinstance(graph.get('view.appmenu'), Appmenu)
def test_module(self, *args): providers = [ 'view.preference', 'view.preference.extension', 'view.preference.duration', ] six.assertCountEqual(self, providers, PreferenceDialogModule.providers.keys()) PreferenceDialogModule().add_to(graph) # Extension Stack provider = graph.providers['view.preference.extension'] self.assertIsInstance(provider, FactoryProvider) self.assertEqual(provider.scope, SingletonScope) self.assertDictEqual({'config': 'tomate.config', 'plugin': 'tomate.plugin'}, provider.dependencies) # Duration Stack provider = graph.providers['view.preference.duration'] self.assertIsInstance(provider, FactoryProvider) self.assertEqual(provider.scope, SingletonScope) self.assertDictEqual({'config': 'tomate.config'}, provider.dependencies) # Preference Dialog provider = graph.providers['view.preference'] self.assertIsInstance(provider, FactoryProvider) self.assertEqual(provider.scope, SingletonScope) self.assertDictEqual({'extension': 'view.preference.extension', 'duration': 'view.preference.duration'}, provider.dependencies) config = Mock(**{'get_int.return_value': 25}) graph.register_instance('tomate.config', config) graph.register_factory('tomate.plugin', Mock) graph.register_factory('view.preference.extension', ExtensionStack) graph.register_factory('view.preference.duration', TimerDurationStack) preference = graph.get('view.preference') self.assertIsInstance(preference, PreferenceDialog)
def test_preference_module(): config = Mock(**{'get_int.return_value': 25}) graph.register_instance('tomate.config', config) graph.register_factory('tomate.plugin', Mock) graph.register_factory('view.preference.extension', ExtensionStack) graph.register_factory('view.preference.duration', TimerDurationStack) providers = [ 'view.preference', 'view.preference.duration', 'view.preference.extension', ] assert sorted(PreferenceDialogModule.providers.keys()) == providers PreferenceDialogModule().add_to(graph) # Extension Stack provider = graph.providers['view.preference.extension'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == {'config': 'tomate.config', 'plugin': 'tomate.plugin'} # Duration Stack provider = graph.providers['view.preference.duration'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == {'config': 'tomate.config'} # Preference Dialog provider = graph.providers['view.preference'] assert isinstance(provider, FactoryProvider) assert provider.scope == SingletonScope assert provider.dependencies == {'extension': 'view.preference.extension', 'duration': 'view.preference.duration'} preference = graph.get('view.preference') assert isinstance(preference, PreferenceDialog)
def setup_module(): graph.register_instance('tomate.menu', Gtk.Menu()) graph.register_instance('view.menu', Mock(widget=Gtk.Menu())) graph.register_instance('tomate.session', Mock()) graph.register_factory('view.appmenu', Appmenu) ToolbarModule().add_to(graph)
def activate(self): super(IndicatorPlugin, self).activate() graph.register_instance(TrayIcon, self)
def test_should_unregister_tray_icon_provider(plugin): graph.register_instance(TrayIcon, plugin) plugin.deactivate() assert TrayIcon not in graph.providers.keys()
def plugin_manager(graph): mock_plugin_manager = Mock() graph.register_instance('tomate.plugin', mock_plugin_manager) return mock_plugin_manager
def lazy_proxy(graph): mock_proxy = Mock() graph.register_instance('tomate.proxy', mock_proxy) return mock_proxy