Coverage for manila/tests/wsgi/test_common.py: 100%
19 statements
« prev ^ index » next coverage.py v7.11.0, created at 2026-02-18 22:19 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2026-02-18 22:19 +0000
1# Copyright 2017 Mirantis Inc.
2# All Rights Reserved.
3#
4# Licensed under the Apache License, Version 2.0 (the "License"); you may
5# not use this file except in compliance with the License. You may obtain
6# a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13# License for the specific language governing permissions and limitations
14# under the License.
16from unittest import mock
18from manila import test
19from manila.wsgi import common
22class FakeApp(common.Application):
23 def __init__(self, **kwargs):
24 for k, v in kwargs.items():
25 setattr(self, k, v)
28class WSGICommonTestCase(test.TestCase):
30 def test_application_factory(self):
31 fake_global_config = mock.Mock()
32 kwargs = {"k1": "v1", "k2": "v2"}
34 result = FakeApp.factory(fake_global_config, **kwargs)
36 fake_global_config.assert_not_called()
37 self.assertIsInstance(result, FakeApp)
38 for k, v in kwargs.items():
39 self.assertTrue(hasattr(result, k))
40 self.assertEqual(getattr(result, k), v)
42 def test_application___call__(self):
43 self.assertRaises(
44 NotImplementedError,
45 common.Application(), 'fake_environ', 'fake_start_response')