From: Karl O. Pinc Date: Thu, 1 Nov 2018 17:00:54 +0000 (-0500) Subject: Move code out of main() for extensibility X-Git-Url: https://papio.biology.duke.edu/gitweb/?a=commitdiff_plain;h=c32075c0121ff4aa4eebf473d765b83671dc1235;p=pgwui_server Move code out of main() for extensibility --- diff --git a/src/pgwui_server/__init__.py b/src/pgwui_server/__init__.py index 0e5a17b..eaab761 100644 --- a/src/pgwui_server/__init__.py +++ b/src/pgwui_server/__init__.py @@ -25,11 +25,16 @@ from pyramid.config import Configurator -def main(global_config, **settings): - '''Return a Pyramid WSGI application - ''' +def pgwui_server_config(settings): rp = settings.get('pgwui.route_prefix') config = Configurator(settings=settings, route_prefix=rp) config.include('pgwui_common') + return config + + +def main(global_config, **settings): + '''Return a Pyramid WSGI application + ''' + config = pgwui_server_config(settings) return config.make_wsgi_app() diff --git a/tests/test___init__.py b/tests/test___init__.py index cf1c0ae..8a54296 100644 --- a/tests/test___init__.py +++ b/tests/test___init__.py @@ -33,8 +33,21 @@ class MockConfigurator(): pass -def test_configure_includecalled(monkeypatch): +# pgwui_server_config() + +def test_pgwui_server_config(monkeypatch): + '''Returns a configuration''' monkeypatch.setattr(pgwui_server_init, 'Configurator', MockConfigurator) + result = pgwui_server_init.pgwui_server_config({}) + assert isinstance(result, MockConfigurator) + + +# main() +def test_main(monkeypatch): + '''Returns a wsgi app''' + monkeypatch.setattr(pgwui_server_init, 'pgwui_server_config', + lambda *args: MockConfigurator()) + result = pgwui_server_init.main({}) assert result == 'wsgi_app'