From 93b63de980228e7791fa7e474521471d1be808e6 Mon Sep 17 00:00:00 2001 From: "Karl O. Pinc" Date: Tue, 13 Nov 2018 18:24:54 -0600 Subject: [PATCH] Make home route configurable --- src/pgwui_common/__init__.py | 5 +++++ src/pgwui_common/templates/auth_base.mak | 2 +- src/pgwui_common/templates/base.mak | 2 +- tests/test___init__.py | 15 +++++++++++++-- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/pgwui_common/__init__.py b/src/pgwui_common/__init__.py index 6f7add2..6669527 100644 --- a/src/pgwui_common/__init__.py +++ b/src/pgwui_common/__init__.py @@ -22,6 +22,8 @@ '''Provide a way to configure PGWUI. ''' +DEFAULT_HOME_ROUTE = '/' + def base_view(wrapped): '''Decorator for any view which includes base.mk. @@ -33,6 +35,8 @@ def base_view(wrapped): pgwui = response.get('pgwui', {}) pgwui.setdefault('url.css', request.static_url('pgwui_common:static/pgwui.css')) + pgwui.setdefault('route.home', + request.route_url('home')) response['pgwui'] = pgwui return response return wrapper @@ -53,3 +57,4 @@ def includeme(config): 'static', 'pgwui_common:static/', cache_max_age=3600) + config.add_route('home', DEFAULT_HOME_ROUTE) diff --git a/src/pgwui_common/templates/auth_base.mak b/src/pgwui_common/templates/auth_base.mak index dc976c0..9eda515 100644 --- a/src/pgwui_common/templates/auth_base.mak +++ b/src/pgwui_common/templates/auth_base.mak @@ -48,7 +48,7 @@ <%def name="navbar()"> diff --git a/src/pgwui_common/templates/base.mak b/src/pgwui_common/templates/base.mak index c51e2e6..b4b259d 100644 --- a/src/pgwui_common/templates/base.mak +++ b/src/pgwui_common/templates/base.mak @@ -33,7 +33,7 @@ <%def name="navbar()"> diff --git a/tests/test___init__.py b/tests/test___init__.py index 4fa7dff..b002509 100644 --- a/tests/test___init__.py +++ b/tests/test___init__.py @@ -50,8 +50,13 @@ def test_base_view_default(pyramid_request_config): pgwui_common_init.includeme(pyramid_request_config) wrapper = pgwui_common_init.base_view(mock_view) - response = wrapper(get_current_request()) - assert response['pgwui']['url.css'] == css_url + request = get_current_request() + response = wrapper(request) + pgwui = response['pgwui'] + assert pgwui['url.css'] == css_url + url = (request.application_url + + pgwui_common_init.DEFAULT_HOME_ROUTE) + assert pgwui['route.home'] == url # auth_base_view() @@ -78,6 +83,7 @@ def test_includeme_configurecalled(): def __init__(self): self.include_called = False self.add_static_view_called = False + self.home_route = None def include(self, *args): self.include_called = True @@ -85,10 +91,15 @@ def test_includeme_configurecalled(): def add_static_view(self, *args, **kwargs): self.add_static_view_called = True + def add_route(self, name, route): + if name == 'home': + self.home_route = route + config = MockConfig() pgwui_common_init.includeme(config) assert config.include_called assert config.add_static_view_called + assert config.home_route == '/' # Integration tests -- 2.34.1