172 |
172 |
self.assertTrue(servers_get.call_args[1]['changes_since'])
|
173 |
173 |
|
174 |
174 |
@patch('%s.perform_request' % khttp, return_value=FR())
|
175 |
|
def test_get_server_metadata(self, PR):
|
176 |
|
vm_id = vm_recv['server']['id']
|
177 |
|
metadata = dict(m1='v1', m2='v2', m3='v3')
|
178 |
|
FR.json = dict(metadata=dict(values=metadata))
|
179 |
|
r = self.client.get_server_metadata(vm_id)
|
180 |
|
self.assertEqual(self.client.http_client.url, self.url)
|
181 |
|
self.assertEqual(
|
182 |
|
self.client.http_client.path,
|
183 |
|
'/servers/%s/meta' % vm_id)
|
184 |
|
self.assert_dicts_are_equal(r, metadata)
|
185 |
|
|
186 |
|
for k, v in metadata.items():
|
187 |
|
FR.json = dict(meta={k: v})
|
188 |
|
r = self.client.get_server_metadata(vm_id, k)
|
189 |
|
self.assertEqual(self.client.http_client.url, self.url)
|
190 |
|
self.assertEqual(
|
191 |
|
self.client.http_client.path,
|
192 |
|
'/servers/%s/meta/%s' % (vm_id, k))
|
193 |
|
self.assert_dicts_are_equal(r, {k: v})
|
194 |
|
|
195 |
|
@patch('%s.servers_post' % cyclades_pkg, return_value=FR())
|
196 |
|
def test_update_server_metadata(self, servers_post):
|
197 |
|
vm_id = vm_recv['server']['id']
|
198 |
|
metadata = dict(m1='v1', m2='v2', m3='v3')
|
199 |
|
FR.json = dict(metadata=metadata)
|
200 |
|
r = self.client.update_server_metadata(vm_id, **metadata)
|
201 |
|
self.assert_dicts_are_equal(r, metadata)
|
202 |
|
(called_id, cmd) = servers_post.call_args[0]
|
203 |
|
self.assertEqual(called_id, vm_id)
|
204 |
|
self.assertEqual(cmd, 'meta')
|
205 |
|
data = servers_post.call_args[1]['json_data']
|
206 |
|
self.assert_dicts_are_equal(data, dict(metadata=metadata))
|
207 |
|
|
208 |
|
@patch('%s.servers_delete' % cyclades_pkg, return_value=FR())
|
209 |
|
def test_delete_server_metadata(self, servers_delete):
|
210 |
|
vm_id = vm_recv['server']['id']
|
211 |
|
key = 'metakey'
|
212 |
|
self.client.delete_server_metadata(vm_id, key)
|
213 |
|
self.assertEqual((vm_id, 'meta/' + key), servers_delete.call_args[0])
|
214 |
|
|
215 |
|
@patch('%s.perform_request' % khttp, return_value=FR())
|
216 |
175 |
def test_list_flavors(self, PR):
|
217 |
176 |
FR.json = flavor_list
|
218 |
177 |
r = self.client.list_flavors()
|