summaryrefslogtreecommitdiff
path: root/functional/tests/volume
diff options
context:
space:
mode:
Diffstat (limited to 'functional/tests/volume')
-rw-r--r--functional/tests/volume/__init__.py0
-rw-r--r--functional/tests/volume/v1/__init__.py0
-rw-r--r--functional/tests/volume/v1/common.py23
-rw-r--r--functional/tests/volume/v1/test_qos.py55
-rw-r--r--functional/tests/volume/v1/test_volume.py77
-rw-r--r--functional/tests/volume/v1/test_volume_type.py74
-rw-r--r--functional/tests/volume/v2/__init__.py0
-rw-r--r--functional/tests/volume/v2/common.py23
-rw-r--r--functional/tests/volume/v2/test_qos.py62
-rw-r--r--functional/tests/volume/v2/test_snapshot.py83
-rw-r--r--functional/tests/volume/v2/test_volume.py137
-rw-r--r--functional/tests/volume/v2/test_volume_type.py84
12 files changed, 0 insertions, 618 deletions
diff --git a/functional/tests/volume/__init__.py b/functional/tests/volume/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/functional/tests/volume/__init__.py
+++ /dev/null
diff --git a/functional/tests/volume/v1/__init__.py b/functional/tests/volume/v1/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/functional/tests/volume/v1/__init__.py
+++ /dev/null
diff --git a/functional/tests/volume/v1/common.py b/functional/tests/volume/v1/common.py
deleted file mode 100644
index 7d35ed5e..00000000
--- a/functional/tests/volume/v1/common.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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 os
-
-from functional.common import test
-
-
-class BaseVolumeTests(test.TestCase):
- """Base class for Volume functional tests. """
-
- @classmethod
- def setUpClass(cls):
- os.environ['OS_VOLUME_API_VERSION'] = '1'
diff --git a/functional/tests/volume/v1/test_qos.py b/functional/tests/volume/v1/test_qos.py
deleted file mode 100644
index 5aed4bd0..00000000
--- a/functional/tests/volume/v1/test_qos.py
+++ /dev/null
@@ -1,55 +0,0 @@
-# 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 uuid
-
-from functional.tests.volume.v1 import common
-
-
-class QosTests(common.BaseVolumeTests):
- """Functional tests for volume qos. """
-
- NAME = uuid.uuid4().hex
- HEADERS = ['Name']
- FIELDS = ['id', 'name']
- ID = None
-
- @classmethod
- def setUpClass(cls):
- super(QosTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
- raw_output = cls.openstack('volume qos create ' + cls.NAME + opts)
- cls.ID, name, rol = raw_output.split('\n')
- cls.assertOutput(cls.NAME, name)
-
- @classmethod
- def tearDownClass(cls):
- raw_output = cls.openstack('volume qos delete ' + cls.ID)
- cls.assertOutput('', raw_output)
-
- def test_volume_qos_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume qos list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_qos_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume qos show ' + self.ID + opts)
- self.assertEqual(self.ID + "\n" + self.NAME + "\n", raw_output)
-
- def test_volume_qos_metadata(self):
- raw_output = self.openstack(
- 'volume qos set --property a=b --property c=d ' + self.ID)
- self.assertEqual("", raw_output)
- opts = self.get_opts(['name', 'specs'])
- raw_output = self.openstack('volume qos show ' + self.ID + opts)
- self.assertEqual(self.NAME + "\na='b', c='d'\n", raw_output)
diff --git a/functional/tests/volume/v1/test_volume.py b/functional/tests/volume/v1/test_volume.py
deleted file mode 100644
index 8275bf0a..00000000
--- a/functional/tests/volume/v1/test_volume.py
+++ /dev/null
@@ -1,77 +0,0 @@
-# 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 uuid
-
-from functional.tests.volume.v1 import common
-
-
-class VolumeTests(common.BaseVolumeTests):
- """Functional tests for volume. """
-
- NAME = uuid.uuid4().hex
- OTHER_NAME = uuid.uuid4().hex
- HEADERS = ['"Display Name"']
- FIELDS = ['display_name']
-
- @classmethod
- def setUpClass(cls):
- super(VolumeTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
- raw_output = cls.openstack('volume create --size 1 ' + cls.NAME + opts)
- expected = cls.NAME + '\n'
- cls.assertOutput(expected, raw_output)
-
- @classmethod
- def tearDownClass(cls):
- # Rename test
- raw_output = cls.openstack(
- 'volume set --name ' + cls.OTHER_NAME + ' ' + cls.NAME)
- cls.assertOutput('', raw_output)
- # Delete test
- raw_output = cls.openstack('volume delete ' + cls.OTHER_NAME)
- cls.assertOutput('', raw_output)
-
- def test_volume_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n", raw_output)
-
- def test_volume_properties(self):
- raw_output = self.openstack(
- 'volume set --property a=b --property c=d ' + self.NAME)
- self.assertEqual("", raw_output)
- opts = self.get_opts(["properties"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual("a='b', c='d'\n", raw_output)
-
- raw_output = self.openstack('volume unset --property a ' + self.NAME)
- self.assertEqual("", raw_output)
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual("c='d'\n", raw_output)
-
- def test_volume_set(self):
- self.openstack('volume set --description RAMAC ' + self.NAME)
- opts = self.get_opts(["display_description", "display_name"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual("RAMAC\n" + self.NAME + "\n", raw_output)
-
- def test_volume_set_size(self):
- self.openstack('volume set --size 2 ' + self.NAME)
- opts = self.get_opts(["display_name", "size"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n2\n", raw_output)
diff --git a/functional/tests/volume/v1/test_volume_type.py b/functional/tests/volume/v1/test_volume_type.py
deleted file mode 100644
index ed44f3c3..00000000
--- a/functional/tests/volume/v1/test_volume_type.py
+++ /dev/null
@@ -1,74 +0,0 @@
-# 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 time
-import uuid
-
-from functional.tests.volume.v1 import common
-
-
-class VolumeTypeTests(common.BaseVolumeTests):
- """Functional tests for volume type. """
-
- NAME = uuid.uuid4().hex
- HEADERS = ['"Name"']
- FIELDS = ['name']
-
- @classmethod
- def setUpClass(cls):
- super(VolumeTypeTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
- raw_output = cls.openstack('volume type create ' + cls.NAME + opts)
- expected = cls.NAME + '\n'
- cls.assertOutput(expected, raw_output)
-
- @classmethod
- def tearDownClass(cls):
- raw_output = cls.openstack('volume type delete ' + cls.NAME)
- cls.assertOutput('', raw_output)
-
- def test_volume_type_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume type list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_type_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n", raw_output)
-
- def test_volume_type_set_unset_properties(self):
- raw_output = self.openstack(
- 'volume type set --property a=b --property c=d ' + self.NAME)
- self.assertEqual("", raw_output)
-
- opts = self.get_opts(["properties"])
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual("a='b', c='d'\n", raw_output)
-
- raw_output = self.openstack('volume type unset --property a '
- + self.NAME)
- self.assertEqual("", raw_output)
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual("c='d'\n", raw_output)
-
- def test_multi_delete(self):
- vol_type1 = uuid.uuid4().hex
- vol_type2 = uuid.uuid4().hex
- self.openstack('volume type create ' + vol_type1)
- time.sleep(5)
- self.openstack('volume type create ' + vol_type2)
- time.sleep(5)
- cmd = 'volume type delete %s %s' % (vol_type1, vol_type2)
- time.sleep(5)
- raw_output = self.openstack(cmd)
- self.assertOutput('', raw_output)
diff --git a/functional/tests/volume/v2/__init__.py b/functional/tests/volume/v2/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/functional/tests/volume/v2/__init__.py
+++ /dev/null
diff --git a/functional/tests/volume/v2/common.py b/functional/tests/volume/v2/common.py
deleted file mode 100644
index 8652c2d1..00000000
--- a/functional/tests/volume/v2/common.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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 os
-
-from functional.common import test
-
-
-class BaseVolumeTests(test.TestCase):
- """Base class for Volume functional tests. """
-
- @classmethod
- def setUpClass(cls):
- os.environ['OS_VOLUME_API_VERSION'] = '2'
diff --git a/functional/tests/volume/v2/test_qos.py b/functional/tests/volume/v2/test_qos.py
deleted file mode 100644
index 5311b478..00000000
--- a/functional/tests/volume/v2/test_qos.py
+++ /dev/null
@@ -1,62 +0,0 @@
-# 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 uuid
-
-from functional.tests.volume.v2 import common
-
-
-class QosTests(common.BaseVolumeTests):
- """Functional tests for volume qos. """
-
- NAME = uuid.uuid4().hex
- HEADERS = ['Name']
- FIELDS = ['id', 'name']
- ID = None
-
- @classmethod
- def setUpClass(cls):
- super(QosTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
- raw_output = cls.openstack('volume qos create ' + cls.NAME + opts)
- cls.ID, name, rol = raw_output.split('\n')
- cls.assertOutput(cls.NAME, name)
-
- @classmethod
- def tearDownClass(cls):
- raw_output = cls.openstack('volume qos delete ' + cls.ID)
- cls.assertOutput('', raw_output)
-
- def test_volume_qos_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume qos list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_qos_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume qos show ' + self.ID + opts)
- self.assertEqual(self.ID + "\n" + self.NAME + "\n", raw_output)
-
- def test_volume_qos_metadata(self):
- raw_output = self.openstack(
- 'volume qos set --property a=b --property c=d ' + self.ID)
- self.assertEqual("", raw_output)
- opts = self.get_opts(['name', 'specs'])
- raw_output = self.openstack('volume qos show ' + self.ID + opts)
- self.assertEqual(self.NAME + "\na='b', c='d'\n", raw_output)
-
- raw_output = self.openstack(
- 'volume qos unset --property a ' + self.ID)
- self.assertEqual("", raw_output)
- opts = self.get_opts(['name', 'specs'])
- raw_output = self.openstack('volume qos show ' + self.ID + opts)
- self.assertEqual(self.NAME + "\nc='d'\n", raw_output)
diff --git a/functional/tests/volume/v2/test_snapshot.py b/functional/tests/volume/v2/test_snapshot.py
deleted file mode 100644
index 4f910830..00000000
--- a/functional/tests/volume/v2/test_snapshot.py
+++ /dev/null
@@ -1,83 +0,0 @@
-# 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 time
-import uuid
-
-from functional.tests.volume.v2 import common
-
-
-class SnapshotTests(common.BaseVolumeTests):
- """Functional tests for snapshot. """
-
- VOLLY = uuid.uuid4().hex
- NAME = uuid.uuid4().hex
- OTHER_NAME = uuid.uuid4().hex
- HEADERS = ['"Name"']
-
- @classmethod
- def wait_for_status(cls, command, status, tries):
- opts = cls.get_opts(['status'])
- for attempt in range(tries):
- time.sleep(1)
- raw_output = cls.openstack(command + opts)
- if (raw_output == status):
- return
- cls.assertOutput(status, raw_output)
-
- @classmethod
- def setUpClass(cls):
- super(SnapshotTests, cls).setUpClass()
- cls.openstack('volume create --size 1 ' + cls.VOLLY)
- cls.wait_for_status('volume show ' + cls.VOLLY, 'available\n', 3)
- opts = cls.get_opts(['status'])
- raw_output = cls.openstack('snapshot create --name ' + cls.NAME +
- ' ' + cls.VOLLY + opts)
- cls.assertOutput('creating\n', raw_output)
- cls.wait_for_status('snapshot show ' + cls.NAME, 'available\n', 3)
-
- @classmethod
- def tearDownClass(cls):
- # Rename test
- raw_output = cls.openstack(
- 'snapshot set --name ' + cls.OTHER_NAME + ' ' + cls.NAME)
- cls.assertOutput('', raw_output)
- # Delete test
- raw_output = cls.openstack('snapshot delete ' + cls.OTHER_NAME)
- cls.assertOutput('', raw_output)
- cls.openstack('volume delete --force ' + cls.VOLLY, fail_ok=True)
-
- def test_snapshot_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('snapshot list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_snapshot_properties(self):
- raw_output = self.openstack(
- 'snapshot set --property a=b --property c=d ' + self.NAME)
- self.assertEqual("", raw_output)
- opts = self.get_opts(["properties"])
- raw_output = self.openstack('snapshot show ' + self.NAME + opts)
- self.assertEqual("a='b', c='d'\n", raw_output)
-
- raw_output = self.openstack('snapshot unset --property a ' + self.NAME)
- self.assertEqual("", raw_output)
- raw_output = self.openstack('snapshot show ' + self.NAME + opts)
- self.assertEqual("c='d'\n", raw_output)
-
- def test_snapshot_set(self):
- raw_output = self.openstack(
- 'snapshot set --description backup ' + self.NAME)
- self.assertEqual("", raw_output)
- opts = self.get_opts(["description", "name"])
- raw_output = self.openstack('snapshot show ' + self.NAME + opts)
- self.assertEqual("backup\n" + self.NAME + "\n", raw_output)
diff --git a/functional/tests/volume/v2/test_volume.py b/functional/tests/volume/v2/test_volume.py
deleted file mode 100644
index 02324a1e..00000000
--- a/functional/tests/volume/v2/test_volume.py
+++ /dev/null
@@ -1,137 +0,0 @@
-# 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 time
-import uuid
-
-from functional.tests.volume.v2 import common
-
-
-class VolumeTests(common.BaseVolumeTests):
- """Functional tests for volume. """
-
- NAME = uuid.uuid4().hex
- SNAPSHOT_NAME = uuid.uuid4().hex
- VOLUME_FROM_SNAPSHOT_NAME = uuid.uuid4().hex
- OTHER_NAME = uuid.uuid4().hex
- HEADERS = ['"Display Name"']
- FIELDS = ['name']
-
- @classmethod
- def setUpClass(cls):
- super(VolumeTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
-
- # Create test volume
- raw_output = cls.openstack('volume create --size 1 ' + cls.NAME + opts)
- expected = cls.NAME + '\n'
- cls.assertOutput(expected, raw_output)
-
- @classmethod
- def tearDownClass(cls):
- # Rename test volume
- raw_output = cls.openstack(
- 'volume set --name ' + cls.OTHER_NAME + ' ' + cls.NAME)
- cls.assertOutput('', raw_output)
-
- # Set volume state
- cls.openstack('volume set --state error ' + cls.OTHER_NAME)
- opts = cls.get_opts(["status"])
- raw_output_status = cls.openstack(
- 'volume show ' + cls.OTHER_NAME + opts)
-
- # Delete test volume
- raw_output = cls.openstack('volume delete ' + cls.OTHER_NAME)
- cls.assertOutput('', raw_output)
- cls.assertOutput('error\n', raw_output_status)
-
- def test_volume_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n", raw_output)
-
- def test_volume_properties(self):
- raw_output = self.openstack(
- 'volume set --property a=b --property c=d ' + self.NAME)
- self.assertEqual("", raw_output)
- opts = self.get_opts(["properties"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual("a='b', c='d'\n", raw_output)
-
- raw_output = self.openstack('volume unset --property a ' + self.NAME)
- self.assertEqual("", raw_output)
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual("c='d'\n", raw_output)
-
- def test_volume_set(self):
- discription = uuid.uuid4().hex
- self.openstack('volume set --description ' + discription + ' ' +
- self.NAME)
- opts = self.get_opts(["description", "name"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual(discription + "\n" + self.NAME + "\n", raw_output)
-
- def test_volume_set_size(self):
- self.openstack('volume set --size 2 ' + self.NAME)
- opts = self.get_opts(["name", "size"])
- raw_output = self.openstack('volume show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n2\n", raw_output)
-
- def test_volume_snapshot(self):
- opts = self.get_opts(self.FIELDS)
-
- # Create snapshot from test volume
- raw_output = self.openstack('snapshot create ' + self.NAME +
- ' --name ' + self.SNAPSHOT_NAME + opts)
- expected = self.SNAPSHOT_NAME + '\n'
- self.assertOutput(expected, raw_output)
- self.wait_for("snapshot", self.SNAPSHOT_NAME, "available")
-
- # Create volume from snapshot
- raw_output = self.openstack('volume create --size 2 --snapshot ' +
- self.SNAPSHOT_NAME + ' ' +
- self.VOLUME_FROM_SNAPSHOT_NAME + opts)
- expected = self.VOLUME_FROM_SNAPSHOT_NAME + '\n'
- self.assertOutput(expected, raw_output)
- self.wait_for("volume", self.VOLUME_FROM_SNAPSHOT_NAME, "available")
-
- # Delete volume that create from snapshot
- raw_output = self.openstack('volume delete ' +
- self.VOLUME_FROM_SNAPSHOT_NAME)
- self.assertOutput('', raw_output)
-
- # Delete test snapshot
- raw_output = self.openstack('snapshot delete ' + self.SNAPSHOT_NAME)
- self.assertOutput('', raw_output)
- self.wait_for("volume", self.NAME, "available")
-
- def wait_for(self, check_type, check_name, desired_status, wait=120,
- interval=5, failures=['ERROR']):
- status = "notset"
- total_sleep = 0
- opts = self.get_opts(['status'])
- while total_sleep < wait:
- status = self.openstack(check_type + ' show ' + check_name + opts)
- status = status.rstrip()
- print('Checking {} {} Waiting for {} current status: {}'
- .format(check_type, check_name, desired_status, status))
- if status == desired_status:
- break
- self.assertNotIn(status, failures)
- time.sleep(interval)
- total_sleep += interval
- self.assertEqual(desired_status, status)
diff --git a/functional/tests/volume/v2/test_volume_type.py b/functional/tests/volume/v2/test_volume_type.py
deleted file mode 100644
index 02f790ec..00000000
--- a/functional/tests/volume/v2/test_volume_type.py
+++ /dev/null
@@ -1,84 +0,0 @@
-# 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 time
-import uuid
-
-from functional.tests.volume.v2 import common
-
-
-class VolumeTypeTests(common.BaseVolumeTests):
- """Functional tests for volume type. """
-
- NAME = uuid.uuid4().hex
- HEADERS = ['"Name"']
- FIELDS = ['name']
-
- @classmethod
- def setUpClass(cls):
- super(VolumeTypeTests, cls).setUpClass()
- opts = cls.get_opts(cls.FIELDS)
- raw_output = cls.openstack(
- 'volume type create --private ' + cls.NAME + opts)
- expected = cls.NAME + '\n'
- cls.assertOutput(expected, raw_output)
-
- @classmethod
- def tearDownClass(cls):
- raw_output = cls.openstack('volume type delete ' + cls.NAME)
- cls.assertOutput('', raw_output)
-
- def test_volume_type_list(self):
- opts = self.get_opts(self.HEADERS)
- raw_output = self.openstack('volume type list' + opts)
- self.assertIn(self.NAME, raw_output)
-
- def test_volume_type_show(self):
- opts = self.get_opts(self.FIELDS)
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual(self.NAME + "\n", raw_output)
-
- def test_volume_type_set_unset_properties(self):
- raw_output = self.openstack(
- 'volume type set --property a=b --property c=d ' + self.NAME)
- self.assertEqual("", raw_output)
-
- opts = self.get_opts(["properties"])
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual("a='b', c='d'\n", raw_output)
-
- raw_output = self.openstack('volume type unset --property a '
- + self.NAME)
- self.assertEqual("", raw_output)
- raw_output = self.openstack('volume type show ' + self.NAME + opts)
- self.assertEqual("c='d'\n", raw_output)
-
- def test_volume_type_set_unset_project(self):
- raw_output = self.openstack(
- 'volume type set --project admin ' + self.NAME)
- self.assertEqual("", raw_output)
-
- raw_output = self.openstack(
- 'volume type unset --project admin ' + self.NAME)
- self.assertEqual("", raw_output)
-
- def test_multi_delete(self):
- vol_type1 = uuid.uuid4().hex
- vol_type2 = uuid.uuid4().hex
- self.openstack('volume type create ' + vol_type1)
- time.sleep(5)
- self.openstack('volume type create ' + vol_type2)
- time.sleep(5)
- cmd = 'volume type delete %s %s' % (vol_type1, vol_type2)
- time.sleep(5)
- raw_output = self.openstack(cmd)
- self.assertOutput('', raw_output)