
There are two issues in fixed_ip schema and client. 1. Schema expect string in response body- Nova had bug#1356058 for response of reserve/unreserve fixed ip APIs, where plain text ("202 Accepted The request is accepted for processing.") was returned in response body. It is fixed on Nova side - Ifca3081f573407808a2196e71ac1db87180db6ec 2. Return value of reserve_fixed_ip client method- In Fixed ip service client, reserve_fixed_ip method does not return the response body. As per consistency in service client interfaces, this method should return the response value even that is empty body. Those were fixed in Tempest but did not get sync in lib. -I098ee0d1fa3056f8cfb0654e2b8fd3bf75fb3e2c -I2cb1ef8dacd1994576656cfb108dd2eef2fbd988 Change-Id: I27b8d2165188ee069f5d8d22c0426f2c748f80c8
59 lines
2.3 KiB
Python
59 lines
2.3 KiB
Python
# Copyright 2015 NEC Corporation. All rights reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
from tempest_lib.services.compute import fixed_ips_client
|
|
from tempest_lib.tests import fake_auth_provider
|
|
from tempest_lib.tests.services.compute import base
|
|
|
|
|
|
class TestFixedIPsClient(base.BaseComputeServiceTest):
|
|
FIXED_IP_INFO = {"fixed_ip": {"address": "10.0.0.1",
|
|
"cidr": "10.11.12.0/24",
|
|
"host": "localhost",
|
|
"hostname": "OpenStack"}}
|
|
|
|
def setUp(self):
|
|
super(TestFixedIPsClient, self).setUp()
|
|
fake_auth = fake_auth_provider.FakeAuthProvider()
|
|
self.fixedIPsClient = (fixed_ips_client.
|
|
FixedIPsClient
|
|
(fake_auth, 'compute',
|
|
'regionOne'))
|
|
|
|
def _test_show_fixed_ip(self, bytes_body=False):
|
|
self.check_service_client_function(
|
|
self.fixedIPsClient.show_fixed_ip,
|
|
'tempest_lib.common.rest_client.RestClient.get',
|
|
self.FIXED_IP_INFO, bytes_body,
|
|
status=200, fixed_ip='Identifier')
|
|
|
|
def test_show_fixed_ip_with_str_body(self):
|
|
self._test_show_fixed_ip()
|
|
|
|
def test_show_fixed_ip_with_bytes_body(self):
|
|
self._test_show_fixed_ip(True)
|
|
|
|
def _test_reserve_fixed_ip(self, bytes_body=False):
|
|
self.check_service_client_function(
|
|
self.fixedIPsClient.reserve_fixed_ip,
|
|
'tempest_lib.common.rest_client.RestClient.post',
|
|
{}, bytes_body,
|
|
status=202, fixed_ip='Identifier')
|
|
|
|
def test_reserve_fixed_ip_with_str_body(self):
|
|
self._test_reserve_fixed_ip()
|
|
|
|
def test_reserve_fixed_ip_with_bytes_body(self):
|
|
self._test_reserve_fixed_ip(True)
|