diff options
-rw-r--r-- | service/pixelated/resources/root_resource.py | 5 | ||||
-rw-r--r-- | service/test/unit/resources/test_root_resource.py | 18 |
2 files changed, 17 insertions, 6 deletions
diff --git a/service/pixelated/resources/root_resource.py b/service/pixelated/resources/root_resource.py index 608e18ef..5477dca8 100644 --- a/service/pixelated/resources/root_resource.py +++ b/service/pixelated/resources/root_resource.py @@ -49,10 +49,11 @@ MODE_RUNNING = 2 class PublicRootResource(BaseResource, object): - def __init__(self, services_factory, assets_path): + def __init__(self, services_factory, assets_path, **kwargs): super(PublicRootResource, self).__init__(services_factory) self._child_resources = dict( - assets=File(assets_path) + assets=File(assets_path), + login=LoginResource(services_factory, **{k: kwargs[k] for k in kwargs if k in ('provider', 'disclaimer_banner', 'authenticator')}) ) def getChild(self, path, request): diff --git a/service/test/unit/resources/test_root_resource.py b/service/test/unit/resources/test_root_resource.py index 082f2b22..9b3042a8 100644 --- a/service/test/unit/resources/test_root_resource.py +++ b/service/test/unit/resources/test_root_resource.py @@ -25,15 +25,25 @@ class TestPublicRootResource(unittest.TestCase): os.path.join(os.path.abspath(pixelated.__file__), '..', '..', '..', 'web-ui', 'public') ) services_factory = mock() - self.public_root_resource = PublicRootResource(services_factory, assets_path=assets_path) + self.public_root_resource = PublicRootResource(services_factory, assets_path=assets_path, provider=mock()) self.web = DummySite(self.public_root_resource) - self.request = DummyRequest(['assets', 'dummy.json']) def test_assets_should_be_available(self): - d = self.web.get(self.request) + request = DummyRequest(['assets', 'dummy.json']) + d = self.web.get(request) + + def assert_response(_): + self.assertEqual(200, request.responseCode) + + d.addCallback(assert_response) + return d + + def test_login_should_be_available(self): + request = DummyRequest(['login']) + d = self.web.get(request) def assert_response(_): - self.assertEqual(200, self.request.responseCode) + self.assertEqual(200, request.responseCode) d.addCallback(assert_response) return d |