Esempio n. 1
0
    def activate(self):
        super(StatusIconPlugin, self).activate()

        graph.register_instance(TrayIcon, self)
        connect_events(self.menu)

        self._show_if_session_is_running()
    def activate(self):
        super(StatusIconPlugin, self).activate()

        graph.register_instance(TrayIcon, self)
        connect_events(self.menu)

        self._show_if_session_is_running()
Esempio n. 3
0
    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())
Esempio n. 4
0
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()
Esempio n. 5
0
    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()
Esempio n. 6
0
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()
Esempio n. 7
0
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
Esempio n. 8
0
    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)
Esempio n. 9
0
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)
Esempio n. 10
0
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)
Esempio n. 11
0
    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)
Esempio n. 13
0
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)
Esempio n. 15
0
def test_should_unregister_tray_icon_provider(plugin):
    graph.register_instance(TrayIcon, plugin)

    plugin.deactivate()

    assert TrayIcon not in graph.providers.keys()
Esempio n. 16
0
def plugin_manager(graph):
    mock_plugin_manager = Mock()
    graph.register_instance('tomate.plugin', mock_plugin_manager)
    return mock_plugin_manager
Esempio n. 17
0
def lazy_proxy(graph):
    mock_proxy = Mock()
    graph.register_instance('tomate.proxy', mock_proxy)
    return mock_proxy
Esempio n. 18
0
def test_should_unregister_tray_icon_provider(plugin):
    graph.register_instance(TrayIcon, plugin)

    plugin.deactivate()

    assert TrayIcon not in graph.providers.keys()