Files
deb-python-tempest-lib/tempest_lib/tests/services/compute/test_hypervisor_client.py
John Fischer 09bebae231 Migrated hypervisor_client.py
This migrates the above files from tempest. This includes tempest commits:

 * hypervisor_client.py     : Icf782e4469fcecba773b3187c1b36d9d49829c93
 * test_hypervisor_client.py: I401057ecdf70d693c285cdaf64e1a5db62fc9b17
 * hypervisors.py           : I64883306235dc3b90a3a878674532f77d825d5c4

to see the commit history for these files refer to the above Change-Ids in the tempest repository

Partially implements blueprint migrate-service-clients-to-tempest-lib

Change-Id: I1a1dcab8ecd6e12ec03d14303517c8cb1e68ec60
2015-09-25 15:33:04 -04:00

168 lines
6.2 KiB
Python

# Copyright 2015 IBM Corp.
#
# 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 hypervisor_client
from tempest_lib.tests import fake_auth_provider
from tempest_lib.tests.services.compute import base
class TestHypervisorClient(base.BaseComputeServiceTest):
hypervisor_id = "1"
hypervisor_name = "hyper.hostname.com"
def setUp(self):
super(TestHypervisorClient, self).setUp()
fake_auth = fake_auth_provider.FakeAuthProvider()
self.client = hypervisor_client.HypervisorClient(
fake_auth, 'compute', 'regionOne')
def test_list_hypervisor_str_body(self):
self._test_list_hypervisor(bytes_body=False)
def test_list_hypervisor_byte_body(self):
self._test_list_hypervisor(bytes_body=True)
def _test_list_hypervisor(self, bytes_body=False):
expected = {"hypervisors": [{
"id": 1,
"hypervisor_hostname": "hypervisor1.hostname.com"},
{
"id": 2,
"hypervisor_hostname": "hypervisor2.hostname.com"}]}
self.check_service_client_function(
self.client.list_hypervisors,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body)
def test_show_hypervisor_str_body(self):
self._test_show_hypervisor(bytes_body=False)
def test_show_hypervisor_byte_body(self):
self._test_show_hypervisor(bytes_body=True)
def _test_show_hypervisor(self, bytes_body=False):
expected = {"hypervisor": {
"cpu_info": "?",
"current_workload": 0,
"disk_available_least": 1,
"host_ip": "10.10.10.10",
"free_disk_gb": 1028,
"free_ram_mb": 7680,
"hypervisor_hostname": "fake-mini",
"hypervisor_type": "fake",
"hypervisor_version": 1,
"id": 1,
"local_gb": 1028,
"local_gb_used": 0,
"memory_mb": 8192,
"memory_mb_used": 512,
"running_vms": 0,
"service": {
"host": "fake_host",
"id": 2},
"vcpus": 1,
"vcpus_used": 0}}
self.check_service_client_function(
self.client.show_hypervisor,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body,
hypervisor_id=self.hypervisor_id)
def test_list_servers_on_hypervisor_str_body(self):
self._test_list_servers_on_hypervisor(bytes_body=False)
def test_list_servers_on_hypervisor_byte_body(self):
self._test_list_servers_on_hypervisor(bytes_body=True)
def _test_list_servers_on_hypervisor(self, bytes_body=False):
expected = {"hypervisors": [{
"id": 1,
"hypervisor_hostname": "hyper.hostname.com",
"servers": [{
"uuid": "e1ae8fc4-b72d-4c2f-a427-30dd420b6277",
"name": "instance-00000001"},
{
"uuid": "e1ae8fc4-b72d-4c2f-a427-30dd42066666",
"name": "instance-00000002"}
]}
]}
self.check_service_client_function(
self.client.list_servers_on_hypervisor,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body,
hypervisor_name=self.hypervisor_name)
def test_show_hypervisor_statistics_str_body(self):
self._test_show_hypervisor_statistics(bytes_body=False)
def test_show_hypervisor_statistics_byte_body(self):
self._test_show_hypervisor_statistics(bytes_body=True)
def _test_show_hypervisor_statistics(self, bytes_body=False):
expected = {
"hypervisor_statistics": {
"count": 1,
"current_workload": 0,
"disk_available_least": 0,
"free_disk_gb": 1028,
"free_ram_mb": 7680,
"local_gb": 1028,
"local_gb_used": 0,
"memory_mb": 8192,
"memory_mb_used": 512,
"running_vms": 0,
"vcpus": 1,
"vcpus_used": 0}}
self.check_service_client_function(
self.client.show_hypervisor_statistics,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body)
def test_show_hypervisor_uptime_str_body(self):
self._test_show_hypervisor_uptime(bytes_body=False)
def test_show_hypervisor_uptime_byte_body(self):
self._test_show_hypervisor_uptime(bytes_body=True)
def _test_show_hypervisor_uptime(self, bytes_body=False):
expected = {
"hypervisor": {
"hypervisor_hostname": "fake-mini",
"id": 1,
"uptime": (" 08:32:11 up 93 days, 18:25, 12 users, "
" load average: 0.20, 0.12, 0.14")
}}
self.check_service_client_function(
self.client.show_hypervisor_uptime,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body,
hypervisor_id=self.hypervisor_id)
def test_search_hypervisor_str_body(self):
self._test_search_hypervisor(bytes_body=False)
def test_search_hypervisor_byte_body(self):
self._test_search_hypervisor(bytes_body=True)
def _test_search_hypervisor(self, bytes_body=False):
expected = {"hypervisors": [{
"id": 2,
"hypervisor_hostname": "hyper.hostname.com"}]}
self.check_service_client_function(
self.client.search_hypervisor,
'tempest_lib.common.rest_client.RestClient.get',
expected, bytes_body,
hypervisor_name=self.hypervisor_name)