blob: b1b09e8c8017bfb1f5d9420df74ce121f40eb8e7 [file] [log] [blame]
Ihar Hrachyshka34feb5b2016-06-14 16:16:06 +02001# Licensed under the Apache License, Version 2.0 (the "License"); you may
2# not use this file except in compliance with the License. You may obtain
3# a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
9# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
10# License for the specific language governing permissions and limitations
11# under the License.
12
13from tempest import test
14
15from neutron.tests.tempest.api import base
Ihar Hrachyshka34feb5b2016-06-14 16:16:06 +020016
17
18class ExtensionsTest(base.BaseNetworkTest):
19
20 def _test_list_extensions_includes(self, ext):
21 body = self.client.list_extensions()
22 extensions = {ext_['alias'] for ext_ in body['extensions']}
23 self.assertNotEmpty(extensions, "Extension list returned is empty")
24 ext_enabled = test.is_extension_enabled(ext, "network")
25 if ext_enabled:
26 self.assertIn(ext, extensions)
27 else:
28 self.assertNotIn(ext, extensions)
29
30 @test.idempotent_id('262420b7-a4bb-4a3e-b4b5-e73bad18df8c')
31 def test_list_extensions_sorting(self):
32 self._test_list_extensions_includes('sorting')
33
34 @test.idempotent_id('19db409e-a23f-445d-8bc8-ca3d64c84706')
35 def test_list_extensions_pagination(self):
36 self._test_list_extensions_includes('pagination')
Dariusz Smigielf5fb4c62016-08-19 15:41:17 +000037
38 @test.idempotent_id('155b7bc2-e358-4dd8-bf3e-1774c084567f')
39 def test_list_extensions_project_id(self):
40 self._test_list_extensions_includes('project-id')