diff options
Diffstat (limited to 'glance/tests/unit/common/test_wsgi_app.py')
-rw-r--r-- | glance/tests/unit/common/test_wsgi_app.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/glance/tests/unit/common/test_wsgi_app.py b/glance/tests/unit/common/test_wsgi_app.py index 87afc40d7..3de42cb77 100644 --- a/glance/tests/unit/common/test_wsgi_app.py +++ b/glance/tests/unit/common/test_wsgi_app.py @@ -19,6 +19,7 @@ from unittest import mock from glance.api import common from glance.api.v2 import cached_images import glance.async_ +from glance.common import exception from glance.common import wsgi_app from glance.tests import utils as test_utils @@ -114,3 +115,27 @@ class TestWsgiAppInit(test_utils.BaseTestCase): mock_conf.return_value = [] wsgi_app.init_app() mock_Timer.assert_not_called() + + @mock.patch('glance.common.wsgi_app._get_config_files') + @mock.patch('glance.async_._THREADPOOL_MODEL', new=None) + @mock.patch('glance.common.config.load_paste_app', new=mock.MagicMock()) + def test_staging_store_uri_assertion(self, mock_conf): + self.config(node_staging_uri='http://good.luck') + mock_conf.return_value = [] + # Make sure a staging URI with a bad scheme will abort startup + self.assertRaises(exception.GlanceException, wsgi_app.init_app) + + @mock.patch('glance.common.wsgi_app._get_config_files') + @mock.patch('glance.async_._THREADPOOL_MODEL', new=None) + @mock.patch('glance.common.config.load_paste_app', new=mock.MagicMock()) + @mock.patch('os.path.exists') + def test_staging_store_path_check(self, mock_exists, mock_conf): + mock_exists.return_value = False + mock_conf.return_value = [] + with mock.patch.object(wsgi_app, 'LOG') as mock_log: + wsgi_app.init_app() + # Make sure that a missing staging directory will log a warning. + mock_log.warning.assert_called_once_with( + 'Import methods are enabled but staging directory ' + '%(path)s does not exist; Imports will fail!', + {'path': '/tmp/staging/'}) |