Merge "Add functional test for volume service"

This commit is contained in:
Jenkins 2017-05-25 19:53:51 +00:00 committed by Gerrit Code Review
commit b78153aec4
2 changed files with 186 additions and 0 deletions

View File

@ -0,0 +1,93 @@
# 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.
import json
from openstackclient.tests.functional.volume.v1 import common
class VolumeServiceTests(common.BaseVolumeTests):
"""Functional tests for volume service."""
def test_volume_service_list(self):
cmd_output = json.loads(self.openstack(
'volume service list -f json'))
# Get the nonredundant services and hosts
services = list(set([x['Binary'] for x in cmd_output]))
# Test volume service list --service
cmd_output = json.loads(self.openstack(
'volume service list -f json ' +
'--service ' +
services[0]
))
for x in cmd_output:
self.assertEqual(
services[0],
x['Binary']
)
# TODO(zhiyong.dai): test volume service list --host after solving
# https://bugs.launchpad.net/python-openstackclient/+bug/1664451
def test_volume_service_set(self):
# Get a service and host
cmd_output = json.loads(self.openstack(
'volume service list -f json'
))
service_1 = cmd_output[0]['Binary']
host_1 = cmd_output[0]['Host']
# Test volume service set --enable
raw_output = self.openstack(
'volume service set --enable ' +
host_1 + ' ' +
service_1
)
self.assertOutput('', raw_output)
cmd_output = json.loads(self.openstack(
'volume service list -f json --long'
))
self.assertEqual(
'enabled',
cmd_output[0]['Status']
)
self.assertEqual(
None,
cmd_output[0]['Disabled Reason']
)
# Test volume service set --disable and --disable-reason
disable_reason = 'disable_reason'
raw_output = self.openstack(
'volume service set --disable ' +
'--disable-reason ' +
disable_reason + ' ' +
host_1 + ' ' +
service_1
)
self.assertOutput('', raw_output)
cmd_output = json.loads(self.openstack(
'volume service list -f json --long'
))
self.assertEqual(
'disabled',
cmd_output[0]['Status']
)
self.assertEqual(
disable_reason,
cmd_output[0]['Disabled Reason']
)

View File

@ -0,0 +1,93 @@
# 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.
import json
from openstackclient.tests.functional.volume.v2 import common
class VolumeServiceTests(common.BaseVolumeTests):
"""Functional tests for volume service."""
def test_volume_service_list(self):
cmd_output = json.loads(self.openstack(
'volume service list -f json'))
# Get the nonredundant services and hosts
services = list(set([x['Binary'] for x in cmd_output]))
# Test volume service list --service
cmd_output = json.loads(self.openstack(
'volume service list -f json ' +
'--service ' +
services[0]
))
for x in cmd_output:
self.assertEqual(
services[0],
x['Binary']
)
# TODO(zhiyong.dai): test volume service list --host after solving
# https://bugs.launchpad.net/python-openstackclient/+bug/1664451
def test_volume_service_set(self):
# Get a service and host
cmd_output = json.loads(self.openstack(
'volume service list -f json'
))
service_1 = cmd_output[0]['Binary']
host_1 = cmd_output[0]['Host']
# Test volume service set --enable
raw_output = self.openstack(
'volume service set --enable ' +
host_1 + ' ' +
service_1
)
self.assertOutput('', raw_output)
cmd_output = json.loads(self.openstack(
'volume service list -f json --long'
))
self.assertEqual(
'enabled',
cmd_output[0]['Status']
)
self.assertEqual(
None,
cmd_output[0]['Disabled Reason']
)
# Test volume service set --disable and --disable-reason
disable_reason = 'disable_reason'
raw_output = self.openstack(
'volume service set --disable ' +
'--disable-reason ' +
disable_reason + ' ' +
host_1 + ' ' +
service_1
)
self.assertOutput('', raw_output)
cmd_output = json.loads(self.openstack(
'volume service list -f json --long'
))
self.assertEqual(
'disabled',
cmd_output[0]['Status']
)
self.assertEqual(
disable_reason,
cmd_output[0]['Disabled Reason']
)