openstacksdk/openstack/tests/functional/image/v2/test_image.py

68 lines
2.4 KiB
Python

# 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 openstack import connection
from openstack.tests.functional import base
TEST_IMAGE_NAME = 'Test Image'
class TestImage(base.BaseFunctionalTest):
class ImageOpts:
def __init__(self):
self.image_api_version = '2'
def setUp(self):
super(TestImage, self).setUp()
opts = self.ImageOpts()
self.conn = connection.from_config(
cloud_name=base.TEST_CLOUD_NAME, options=opts)
self.img = self.conn.image.upload_image(
name=TEST_IMAGE_NAME,
disk_format='raw',
container_format='bare',
# TODO(mordred): This is not doing what people think it is doing.
# This is EPICLY broken. However, rather than fixing it as it is,
# we need to just replace the image upload code with the stuff
# from shade. Figuring out mapping the crap-tastic arbitrary
# extra key-value pairs into Resource is going to be fun.
properties='{"description": "This is not an image"}',
data=open('CONTRIBUTING.rst', 'r')
)
self.addCleanup(self.conn.image.delete_image, self.img)
def test_get_image(self):
img2 = self.conn.image.get_image(self.img)
self.assertEqual(self.img, img2)
def test_get_images_schema(self):
schema = self.conn.image.get_images_schema()
self.assertIsNotNone(schema)
def test_get_image_schema(self):
schema = self.conn.image.get_image_schema()
self.assertIsNotNone(schema)
def test_get_members_schema(self):
schema = self.conn.image.get_members_schema()
self.assertIsNotNone(schema)
def test_get_member_schema(self):
schema = self.conn.image.get_member_schema()
self.assertIsNotNone(schema)
def test_list_tasks(self):
tasks = self.conn.image.tasks()
self.assertIsNotNone(tasks)