Coverage for nova/api/openstack/compute/versionsV21.py: 81%

17 statements  

« prev     ^ index     » next       coverage.py v7.6.12, created at 2025-04-24 11:16 +0000

1# Copyright 2013 IBM Corp. 

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. 

15 

16import webob.exc 

17 

18from nova.api.openstack.compute.schemas import versions as schema 

19from nova.api.openstack.compute import versions 

20from nova.api.openstack.compute.views import versions as views_versions 

21from nova.api.openstack import wsgi 

22from nova.api import validation 

23 

24 

25class VersionsController(wsgi.Controller): 

26 

27 @wsgi.expected_errors(404) 

28 @validation.query_schema(schema.show_query) 

29 @validation.response_body_schema(schema.show_response) 

30 def show(self, req, id='v2.1'): 

31 builder = views_versions.get_view_builder(req) 

32 if req.is_legacy_v2(): 32 ↛ 33line 32 didn't jump to line 33 because the condition on line 32 was never true

33 id = 'v2.0' 

34 if id not in versions.VERSIONS: 34 ↛ 35line 34 didn't jump to line 35 because the condition on line 34 was never true

35 raise webob.exc.HTTPNotFound() 

36 

37 return builder.build_version(versions.VERSIONS[id])