[OSC] Add OSC Functional Tests Snapshot Instances
Adds osc functional tests for share snapshot instances show, list, and set Partially-implements: bp openstack-client-support Change-Id: I9f6f5adbd7905a23b2fcfafc204e0477983bb630
This commit is contained in:
parent
a0781399bf
commit
3628f3d498
@ -145,7 +145,7 @@ class OSCClientTestBase(base.ClientTestBase):
|
|||||||
snapshot_id=None, properties=None, share_network=None,
|
snapshot_id=None, properties=None, share_network=None,
|
||||||
description=None, public=False, share_type=None,
|
description=None, public=False, share_type=None,
|
||||||
availability_zone=None, share_group=None,
|
availability_zone=None, share_group=None,
|
||||||
add_cleanup=True, client=None,
|
add_cleanup=True, client=None, wait=None,
|
||||||
wait_for_status='available'):
|
wait_for_status='available'):
|
||||||
|
|
||||||
name = name or data_utils.rand_name('autotest_share_name')
|
name = name or data_utils.rand_name('autotest_share_name')
|
||||||
@ -174,6 +174,8 @@ class OSCClientTestBase(base.ClientTestBase):
|
|||||||
cmd = cmd + ' --availability-zone %s' % availability_zone
|
cmd = cmd + ' --availability-zone %s' % availability_zone
|
||||||
if share_group:
|
if share_group:
|
||||||
cmd = cmd + ' --share-group %s' % share_group
|
cmd = cmd + ' --share-group %s' % share_group
|
||||||
|
if wait:
|
||||||
|
cmd = cmd + ' --wait'
|
||||||
|
|
||||||
share_object = self.dict_result('share', cmd, client=client)
|
share_object = self.dict_result('share', cmd, client=client)
|
||||||
self._wait_for_object_status(
|
self._wait_for_object_status(
|
||||||
|
@ -0,0 +1,75 @@
|
|||||||
|
# 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 manilaclient.tests.functional.osc import base
|
||||||
|
|
||||||
|
|
||||||
|
class ShareSnapshotInstancesCLITest(base.OSCClientTestBase):
|
||||||
|
|
||||||
|
def test_openstack_share_snapshot_instance_list(self):
|
||||||
|
share = self.create_share()
|
||||||
|
snapshot = self.create_snapshot(share['id'])
|
||||||
|
share_snapshot_instances_list = self.listing_result(
|
||||||
|
'share snapshot instance', 'list --detailed')
|
||||||
|
self.assertTableStruct(share_snapshot_instances_list, [
|
||||||
|
'ID',
|
||||||
|
'Snapshot ID',
|
||||||
|
'Status',
|
||||||
|
'Created At',
|
||||||
|
'Updated At',
|
||||||
|
'Share ID',
|
||||||
|
'Share Instance ID',
|
||||||
|
'Progress',
|
||||||
|
'Provider Location'
|
||||||
|
])
|
||||||
|
self.assertIn(snapshot['id'],
|
||||||
|
[item['Snapshot ID'] for item in (
|
||||||
|
share_snapshot_instances_list)])
|
||||||
|
|
||||||
|
def test_openstack_share_snapshot_instance_show(self):
|
||||||
|
share = self.create_share()
|
||||||
|
snapshot = self.create_snapshot(share['id'], wait=True)
|
||||||
|
|
||||||
|
share_snapshot_instance = self.listing_result(
|
||||||
|
"share snapshot instance", f'list --snapshot {snapshot["id"]}')
|
||||||
|
result = self.dict_result('share snapshot instance',
|
||||||
|
f'show {share_snapshot_instance[0]["ID"]}')
|
||||||
|
|
||||||
|
self.assertEqual(share_snapshot_instance[0]['ID'], result['id'])
|
||||||
|
self.assertEqual(share_snapshot_instance[0]['Snapshot ID'],
|
||||||
|
result['snapshot_id'])
|
||||||
|
|
||||||
|
listing_result = self.listing_result(
|
||||||
|
'share snapshot instance', f'show '
|
||||||
|
f'{share_snapshot_instance[0]["ID"]}')
|
||||||
|
self.assertTableStruct(listing_result, [
|
||||||
|
'Field',
|
||||||
|
'Value'
|
||||||
|
])
|
||||||
|
|
||||||
|
def test_openstack_share_snapshot_instance_set(self):
|
||||||
|
share = self.create_share()
|
||||||
|
snapshot = self.create_snapshot(share['id'], wait=True)
|
||||||
|
share_snapshot_instance = self.listing_result(
|
||||||
|
"share snapshot instance", f'list --snapshot {snapshot["id"]}')
|
||||||
|
result1 = self.dict_result('share snapshot instance',
|
||||||
|
f'show {share_snapshot_instance[0]["ID"]}')
|
||||||
|
self.assertEqual(share_snapshot_instance[0]['ID'], result1['id'])
|
||||||
|
self.assertEqual(snapshot['id'], result1['snapshot_id'])
|
||||||
|
self.assertEqual('available', result1['status'])
|
||||||
|
|
||||||
|
self.openstack('share snapshot instance set '
|
||||||
|
f'{share_snapshot_instance[0]["ID"]} --status error')
|
||||||
|
result2 = self.dict_result('share snapshot instance',
|
||||||
|
f'show {share_snapshot_instance[0]["ID"]}')
|
||||||
|
self.assertEqual(share_snapshot_instance[0]["ID"], result2['id'])
|
||||||
|
self.assertEqual('error', result2['status'])
|
Loading…
Reference in New Issue
Block a user