Use dicts instead of dots in response's "pgwui" keys
authorKarl O. Pinc <kop@karlpinc.com>
Fri, 11 Sep 2020 21:14:58 +0000 (16:14 -0500)
committerKarl O. Pinc <kop@karlpinc.com>
Fri, 11 Sep 2020 21:14:58 +0000 (16:14 -0500)
src/pgwui_common/__init__.py
src/pgwui_common/plugin.py
src/pgwui_common/templates/auth_base.mak
src/pgwui_common/templates/base.mak
tests/test___init__.py
tests/test_plugin.py

index 04d768d879097900f9c6ef16b36b47d70bc9a2a2..9508b90b44f83d0605db835220dd75628ed565ee 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2018 The Meme Factory, Inc.  http://www.meme.com/
+# Copyright (C) 2018, 2020 The Meme Factory, Inc.  http://www.karlpinc.com/
 
 # This file is part of PGWUI_Common.
 #
@@ -17,7 +17,7 @@
 # <http://www.gnu.org/licenses/>.
 #
 
-# Karl O. Pinc <kop@meme.com>
+# Karl O. Pinc <kop@karlpinc.com>
 
 '''Provide a way to configure PGWUI.
 '''
@@ -33,9 +33,11 @@ def base_view(wrapped):
         '''
         response = wrapped(request)
         pgwui = response.get('pgwui', {})
-        pgwui.setdefault('url.css',
-                         request.static_url('pgwui_common:static/pgwui.css'))
-        pgwui.setdefault('route.home',
+        url = pgwui.setdefault('url', dict())
+        url.setdefault('css',
+                       request.static_url('pgwui_common:static/pgwui.css'))
+        route = pgwui.setdefault('route', dict())
+        route.setdefault('home',
                          request.route_url('home'))
         response['pgwui'] = pgwui
         return response
@@ -55,7 +57,7 @@ def auth_base_view(wrapped):
         except KeyError:
             pass         # A logout route is not required
         else:
-            pgwui.setdefault('route.pgwui_logout', logout_route)
+            pgwui['route'].setdefault('pgwui_logout', logout_route)
         return response
     return wrapper
 
index 9a88175ecdf0ca0dd50ec97f0d5bf283cdafc8ba..2025be0fcdfa7f45e82a4689fd5f324ed1b9f973 100644 (file)
@@ -41,9 +41,3 @@ def find_pgwui_check_settings():
         callable = entry_point.resolve()
         check_settings[callable.__name__] = callable
     return check_settings
-
-
-def component_to_key(component):
-    '''Convert the component to a key used in an ini file's declaration
-    '''
-    return 'pgwui.{}'.format(component)
index da5317c7419d1625d95e1172d41bd7b73d4f75f5..d22ff3a85457a92a3e083fe4fb12cc6558a232c4 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <%doc>
-  Copyright (C) 2015 The Meme Factory, Inc.  http://www.meme.com/
+  Copyright (C) 2015, 2020 The Meme Factory, Inc.  http://www.karlpinc.com/
  
      This file is part of PGWUI_Common.
     
@@ -20,7 +20,7 @@
  
   Base template for form that authenticates a user and accesses a db.
  
-  Karl O. Pinc <kop@meme.com>
+  Karl O. Pinc <kop@karlpinc.com>
 
   This template uses the following variables in it's context:
 
@@ -46,9 +46,9 @@
 
 <%def name="navbar()">
   <p class="navbar">
-    <a href="${pgwui['route.home']}">HOME</a>
-    % if 'route.logout' in pgwui:
-      | <a href="${pgwui['route.logout']}">Logout</a>
+    <a href="${pgwui['route']['home']}">HOME</a>
+    % if 'logout' in pgwui['route']:
+      | <a href="${pgwui['route']['logout']}">Logout</a>
     % endif
   </p>
 </%def>
index b4b259d697004fd83686f2804e45f2cb73203af6..42d042bf0cc05ca364f7b8ea3e46bdb982fc620b 100644 (file)
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <%doc>
-  Copyright (C) 2014, 2015, 2018 The Meme Factory, Inc.  http://www.meme.com/
+  Copyright (C) 2014, 2015, 2018, 2020 The Meme Factory, Inc.
+     http://www.karlpinc.com/
  
      This file is part of PGWUI_Common.
     
@@ -33,7 +34,7 @@
 
 <%def name="navbar()">
   <p class="navbar">
-    <a href="${pgwui['route.home']}">HOME</a>
+    <a href="${pgwui['route']['home']}">HOME</a>
   </p>
 </%def>
 
@@ -45,7 +46,7 @@
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
   <%block name="meta_keywords" />
   <%block name="meta_description" />
-  <link rel="stylesheet" href="${pgwui['url.css']}" type="text/css" />
+  <link rel="stylesheet" href="${pgwui['url']['css']}" type="text/css" />
 </head>
 
 <body>
index fcf1c17bfc43160f404814a945fa3cb9e9b48f9d..e51d3cf24ac7b98a3fc32fafe1ff6a6affa2729a 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2018 The Meme Factory, Inc.  http://www.meme.com/
+# Copyright (C) 2018, 2020 The Meme Factory, Inc.  http://www.karlpinc.com/
 
 # This file is part of PGWUI_Common.
 #
@@ -17,7 +17,7 @@
 # <http://www.gnu.org/licenses/>.
 #
 
-# Karl O. Pinc <kop@meme.com>
+# Karl O. Pinc <kop@karlpinc.com>
 
 import pyramid.config
 from pyramid.threadlocal import get_current_request
@@ -33,14 +33,14 @@ CSS_URL = 'foo://bar/'
 
 
 def mock_view(request):
-    return {'pgwui': {'url.css': CSS_URL}}
+    return {'pgwui': {'url': {'css': CSS_URL}}}
 
 
 def check_base_view_results(request, pgwui):
-    assert pgwui['url.css'] == CSS_URL
+    assert pgwui['url']['css'] == CSS_URL
     url = (request.application_url
            + pgwui_common_init.DEFAULT_HOME_ROUTE)
-    assert pgwui['route.home'] == url
+    assert pgwui['route']['home'] == url
 
 
 # Unit tests
@@ -54,7 +54,7 @@ def test_base_view_add(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'][0:4] == 'http'
+    assert response['pgwui']['url']['css'][0:4] == 'http'
 
 
 def test_base_view_default(pyramid_request_config):
@@ -83,8 +83,8 @@ def test_auth_base_view_logout(pyramid_request_config):
     response = wrapper(request)
     pgwui = response['pgwui']
     check_base_view_results(request, pgwui)
-    assert pgwui['route.pgwui_logout'] == (request.application_url
-                                           + logout_route)
+    assert pgwui['route']['pgwui_logout'] == (request.application_url
+                                              + logout_route)
 
 
 def test_auth_base_view_nologout(pyramid_request_config):
index 077f9256c86ed77cfe746e069bd081debf53def3..9ecbd9e066b3249db4481c14a087e516e7599c82 100644 (file)
@@ -67,15 +67,3 @@ def test_find_pgwui_check_settings(monkeypatch):
 
     assert isinstance(result, dict)
     assert list(result.keys()).sort() == entry_points.sort()
-
-
-# component_to_key()
-
-def test_component_to_key():
-    '''The return value is as expected
-    '''
-    component = 'pgwui_example'
-
-    result = plugin.component_to_key(component)
-
-    assert result == 'pgwui.' + component