Skip to content

Commit f52ee1d

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "tests: Update functional test for image metadef object"
2 parents 68f22c2 + aa87db6 commit f52ee1d

1 file changed

Lines changed: 69 additions & 0 deletions

File tree

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Licensed under the Apache License, Version 2.0 (the "License");
2+
# you may not use this file except in compliance with the License.
3+
# You may obtain a copy of the License at
4+
#
5+
# http://www.apache.org/licenses/LICENSE-2.0
6+
#
7+
# Unless required by applicable law or agreed to in writing, software
8+
# distributed under the License is distributed on an "AS IS" BASIS,
9+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10+
# See the License for the specific language governing permissions and
11+
# limitations under the License.
12+
13+
from openstackclient.tests.functional import base
14+
15+
16+
class MetadefObjectTests(base.TestCase):
17+
def setUp(self):
18+
super().setUp()
19+
self.obj_name = self.getUniqueString('metadef-obj')
20+
self.ns_name = self.getUniqueString('metadef-ns')
21+
self.openstack(f"image metadef namespace create {self.ns_name}")
22+
self.addCleanup(
23+
lambda: self.openstack(
24+
f"image metadef namespace delete {self.ns_name}"
25+
)
26+
)
27+
28+
def test_metadef_objects(self):
29+
# CREATE
30+
created = self.openstack(
31+
(
32+
"image metadef object create "
33+
f"--namespace {self.ns_name} "
34+
f"{self.obj_name}"
35+
),
36+
parse_output=True,
37+
)
38+
self.addCleanup(
39+
lambda: self.openstack(
40+
f"image metadef object delete {self.ns_name} {self.obj_name}"
41+
)
42+
)
43+
self.assertEqual(self.obj_name, created["name"])
44+
self.assertEqual(self.ns_name, created["namespace_name"])
45+
46+
# UPDATE
47+
new_name = f"{self.obj_name}-updated"
48+
self.openstack(
49+
"image metadef object update "
50+
f"{self.ns_name} {self.obj_name} "
51+
f"--name {new_name}"
52+
)
53+
self.obj_name = new_name
54+
55+
# READ (get)
56+
shown = self.openstack(
57+
f"image metadef object show {self.ns_name} {self.obj_name}",
58+
parse_output=True,
59+
)
60+
self.assertEqual(self.obj_name, shown["name"])
61+
self.assertEqual(self.ns_name, shown["namespace_name"])
62+
63+
# READ (list)
64+
rows = self.openstack(
65+
f"image metadef object list {self.ns_name}",
66+
parse_output=True,
67+
)
68+
names = {row["name"] for row in rows}
69+
self.assertIn(self.obj_name, names)

0 commit comments

Comments
 (0)