1#!/usr/bin/env python
2
3from circuits.web import Controller
4from circuits import Component, Event
5
6from .helpers import urlopen
7
8
9class foo(Event):
10
11    """foo Event"""
12
13
14class App(Component):
15
16    channel = "app"
17
18    def foo(self):
19        return "Hello World!"
20
21
22class Root(Controller):
23
24    def index(self):
25        value = (yield self.call(foo(), "app"))
26        yield value.value
27
28
29def test(webapp):
30    app = App().register(webapp)
31    try:
32        f = urlopen(webapp.server.http.base)
33        s = f.read()
34        assert s == b"Hello World!"
35    finally:
36        app.unregister()
37