69
70
for k, v in fixture.items():
70
71
self.assertEquals(v, images[0][k])
73
def test_get_image_index_by_name(self):
74
"""Test correct set of public, name-filtered image returned. This
75
is just a sanity check, we test the details call more in-depth."""
76
extra_fixture = {'id': 3,
80
'container_format': 'ovf',
81
'name': 'new name! #123',
85
glance.registry.db.api.image_create(None, extra_fixture)
87
images = self.client.get_images({'name': 'new name! #123'})
88
self.assertEquals(len(images), 1)
91
self.assertEquals('new name! #123', image['name'])
72
93
def test_get_image_details(self):
73
94
"""Tests that the detailed info about public images returned"""
74
95
fixture = {'id': 2,
87
108
for k, v in fixture.items():
88
109
self.assertEquals(v, images[0][k])
111
def test_get_image_details_by_name(self):
112
"""Tests that a detailed call can be filtered by name"""
113
extra_fixture = {'id': 3,
116
'disk_format': 'vhd',
117
'container_format': 'ovf',
118
'name': 'new name! #123',
122
glance.registry.db.api.image_create(None, extra_fixture)
124
images = self.client.get_images_detailed({'name': 'new name! #123'})
125
self.assertEquals(len(images), 1)
128
self.assertEquals('new name! #123', image['name'])
130
def test_get_image_details_by_status(self):
131
"""Tests that a detailed call can be filtered by status"""
132
extra_fixture = {'id': 3,
135
'disk_format': 'vhd',
136
'container_format': 'ovf',
137
'name': 'new name! #123',
141
glance.registry.db.api.image_create(None, extra_fixture)
143
images = self.client.get_images_detailed({'status': 'saving'})
144
self.assertEquals(len(images), 1)
147
self.assertEquals('saving', image['status'])
149
def test_get_image_details_by_container_format(self):
150
"""Tests that a detailed call can be filtered by container_format"""
151
extra_fixture = {'id': 3,
154
'disk_format': 'vhd',
155
'container_format': 'ovf',
156
'name': 'new name! #123',
160
glance.registry.db.api.image_create(None, extra_fixture)
162
images = self.client.get_images_detailed({'container_format': 'ovf'})
163
self.assertEquals(len(images), 2)
166
self.assertEquals('ovf', image['container_format'])
168
def test_get_image_details_by_disk_format(self):
169
"""Tests that a detailed call can be filtered by disk_format"""
170
extra_fixture = {'id': 3,
173
'disk_format': 'vhd',
174
'container_format': 'ovf',
175
'name': 'new name! #123',
179
glance.registry.db.api.image_create(None, extra_fixture)
181
images = self.client.get_images_detailed({'disk_format': 'vhd'})
182
self.assertEquals(len(images), 2)
185
self.assertEquals('vhd', image['disk_format'])
187
def test_get_image_details_with_maximum_size(self):
188
"""Tests that a detailed call can be filtered by size_max"""
189
extra_fixture = {'id': 3,
192
'disk_format': 'vhd',
193
'container_format': 'ovf',
194
'name': 'new name! #123',
198
glance.registry.db.api.image_create(None, extra_fixture)
200
images = self.client.get_images_detailed({'size_max': 20})
201
self.assertEquals(len(images), 1)
204
self.assertTrue(image['size'] <= 20)
206
def test_get_image_details_with_minimum_size(self):
207
"""Tests that a detailed call can be filtered by size_min"""
208
extra_fixture = {'id': 3,
211
'disk_format': 'vhd',
212
'container_format': 'ovf',
213
'name': 'new name! #123',
217
glance.registry.db.api.image_create(None, extra_fixture)
219
images = self.client.get_images_detailed({'size_min': 20})
220
self.assertEquals(len(images), 1)
223
self.assertTrue(image['size'] >= 20)
225
def test_get_image_details_by_property(self):
226
"""Tests that a detailed call can be filtered by a property"""
227
extra_fixture = {'id': 3,
230
'disk_format': 'vhd',
231
'container_format': 'ovf',
232
'name': 'new name! #123',
235
'properties': {'p a': 'v a'}}
237
glance.registry.db.api.image_create(None, extra_fixture)
239
images = self.client.get_images_detailed({'property-p a': 'v a'})
240
self.assertEquals(len(images), 1)
243
self.assertEquals('v a', image['properties']['p a'])
90
245
def test_get_image(self):
91
246
"""Tests that the detailed info about an image returned"""
92
247
fixture = {'id': 1,