Example #1
0
def test_menu_module():
    from tomate_gtk.widgets.menu import TrayIconMenu

    assert sorted(MenuModule.providers.keys()) == sorted(
        ['view.menu', 'trayicon.menu'])

    graph = Graph()
    MenuModule().add_to(graph)

    provider = graph.providers['view.menu']

    assert 'view.menu' in graph.providers.keys()

    assert isinstance(provider, FactoryProvider)
    assert provider.scope == SingletonScope

    assert provider.dependencies == {
        'lazy_proxy': 'tomate.proxy',
        'about': 'view.about',
        'preference': 'view.preference'
    }

    graph.register_instance('tomate.view', Mock())

    assert isinstance(graph.get('trayicon.menu'), TrayIconMenu)
Example #2
0
def get_application():
    graph = Graph()
    graph.register_scope(RequestScope, RequestScope())
    graph.register_instance(Graph, graph)
    GuestbookModule().add_to(graph)
    graph.validate()
    return graph.get('wsgi.application')
Example #3
0
    def test_module(self):
        from tomate.signals import SignalsProvider, TomateNamespace

        graph = Graph()

        self.assertEqual(['tomate.signals'], SignalsProvider.providers.keys())
        SignalsProvider().add_to(graph)

        provider = graph.providers['tomate.signals']

        self.assertIsInstance(provider, InstanceProvider)
        self.assertEqual(provider.scope, None)
        self.assertEqual(provider.dependencies, {})

        self.assertIsInstance(graph.get('tomate.signals'), TomateNamespace)
Example #4
0
    def test_module(self):
        from tomate.config import Config, ConfigProvider

        graph = Graph()

        self.assertEqual(['tomate.config'], ConfigProvider.providers.keys())
        ConfigProvider().add_to(graph)

        self.assertIn('config.parser', graph.providers.keys())

        provider = graph.providers['tomate.config']

        self.assertIsInstance(provider, FactoryProvider)
        self.assertEqual(provider.scope, SingletonScope)
        self.assertEqual(provider.dependencies,
                         dict(parser='config.parser', signals='tomate.signals'))

        graph.register_instance('tomate.signals', Mock())
        self.assertIsInstance(graph.get('tomate.config'), Config)
Example #5
0
    def test_module(self):
        from tomate.session import Session, SessionProvider

        graph = Graph()

        self.assertEqual(['tomate.session'], SessionProvider.providers.keys())
        SessionProvider().add_to(graph)

        provider = graph.providers['tomate.session']

        self.assertIsInstance(provider, FactoryProvider)
        self.assertEqual(provider.scope, SingletonScope)
        self.assertEqual(provider.dependencies,
                         dict(signals='tomate.signals',
                              config='tomate.config',
                              timer='tomate.timer'))

        graph.register_instance('tomate.signals', Mock())
        graph.register_instance('tomate.timer', Mock())
        graph.register_instance('tomate.config', Mock())
        self.assertIsInstance(graph.get('tomate.session'), Session)
Example #6
0
def test_menu_module():
    from tomate_gtk.widgets.menu import TrayIconMenu

    assert sorted(MenuModule.providers.keys()) == sorted(['view.menu', 'trayicon.menu'])

    graph = Graph()
    MenuModule().add_to(graph)

    provider = graph.providers['view.menu']

    assert 'view.menu' in graph.providers.keys()

    assert isinstance(provider, FactoryProvider)
    assert provider.scope == SingletonScope

    assert provider.dependencies == {'lazy_proxy': 'tomate.proxy',
                                     'about': 'view.about',
                                     'preference': 'view.preference'}

    graph.register_instance('tomate.view', Mock())

    assert isinstance(graph.get('trayicon.menu'), TrayIconMenu)
Example #7
0
def test_module():
    graph = Graph()

    scan_to_graph(["tomate.pomodoro.graph"], graph)

    assert isinstance(graph.get(Graph), Graph)
 def configure(self, bus: Bus, graph: Graph) -> None:
     super().configure(bus, graph)
     self.config = graph.get("focusyn.config")