From d8eccf08a1c0b0ac0c0fbc908d3cc0790cd946c8 Mon Sep 17 00:00:00 2001 From: sslypushenko Date: Mon, 25 May 2015 19:42:57 +0300 Subject: [PATCH] Simplify to run Refstack in development mode This patchs allows to run Refstack application (API + UI) using 'pecan serve' command. CONF.api.template_path and CONF.api.static_root should point to refstack-ui/app CONF.api.app_dev_mode should be set Change-Id: I9f6399a7d59cb0a4656bc8e988862d50647ed940 --- refstack/api/controllers/root.py | 11 +++++++---- refstack/tests/api/test_api.py | 12 ------------ refstack/tests/unit/test_api.py | 11 ++++++++--- 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/refstack/api/controllers/root.py b/refstack/api/controllers/root.py index 28d6219b..9741b84b 100644 --- a/refstack/api/controllers/root.py +++ b/refstack/api/controllers/root.py @@ -16,9 +16,12 @@ """Root controller.""" from pecan import expose +from oslo_config import cfg from refstack.api.controllers import v1 +CONF = cfg.CONF + class RootController(object): @@ -26,7 +29,7 @@ class RootController(object): v1 = v1.V1Controller() - @expose('json') - def index(self): - """root response.""" - return {'Root': 'OK'} + if CONF.api.app_dev_mode: + @expose(generic=True, template='index.html') + def index(self): + return dict() diff --git a/refstack/tests/api/test_api.py b/refstack/tests/api/test_api.py index 33d9ecb1..b77c1c93 100644 --- a/refstack/tests/api/test_api.py +++ b/refstack/tests/api/test_api.py @@ -37,18 +37,6 @@ FAKE_TESTS_RESULT = { } -class TestRootController(api.FunctionalTest): - """Test case for RootController.""" - - URL = '/' - - def test_root_controller(self): - """Test request to root.""" - actual_response = self.get_json(self.URL) - expected_response = {'Root': 'OK'} - self.assertEqual(expected_response, actual_response) - - class TestResultsController(api.FunctionalTest): """Test case for ResultsController.""" diff --git a/refstack/tests/unit/test_api.py b/refstack/tests/unit/test_api.py index 93a19a04..cde0c558 100644 --- a/refstack/tests/unit/test_api.py +++ b/refstack/tests/unit/test_api.py @@ -26,7 +26,6 @@ import requests from refstack.api import constants as const from refstack.api import utils as api_utils -from refstack.api.controllers import root from refstack.api.controllers import v1 @@ -41,10 +40,16 @@ def safe_json_dump(content): class RootControllerTestCase(base.BaseTestCase): - def test_index(self): + @mock.patch('pecan.expose', return_value=lambda f: f) + def test_index(self, expose_mock): + config = config_fixture.Config() + CONF = self.useFixture(config).conf + CONF.set_override('app_dev_mode', True, 'api') + from refstack.api.controllers import root controller = root.RootController() result = controller.index() - self.assertEqual(result, {'Root': 'OK'}) + self.assertEqual({}, result) + expose_mock.assert_called_with(generic=True, template='index.html') class ResultsControllerTestCase(base.BaseTestCase):