Revision 71286858 kamaki/clients/tests.py

b/kamaki/clients/tests.py
199 199
		TEST_ALL = True
200 200

  
201 201
		self.server1 = self._create_server(self.servname1, self.flavorid, self.img)
202
		self.server2 = self._create_server(self.servname2, self.flavorid, self.img)
202
		self.server2 = self._create_server(self.servname2, self.flavorid+1, self.img)
203 203

  
204 204
		print('testing')
205 205
		sys.stdout.write(' test create server')
......
242 242
		self._test_delete_server_metadata()
243 243
		print('...ok')
244 244

  
245
		sys.stdout.write(' test test_list_flavors')
245
		sys.stdout.write(' test list_flavors')
246 246
		self._test_list_flavors()
247 247
		print('...ok')
248 248

  
249
		sys.stdout.write(' test test_get_flavor_details')
249
		sys.stdout.write(' test get_flavor_details')
250 250
		self._test_get_flavor_details()
251 251
		print('...ok')
252 252

  
253
		sys.stdout.write(' test list_images')
254
		self._test_list_images()
255
		print('...ok')
256

  
257
		sys.stdout.write(' test get_image_details')
258
		self._test_get_image_details()
259
		print('...ok')
260

  
261
		sys.stdout.write(' test get_image_metadata')
262
		self._test_get_image_metadata()
263
		print('...ok')
264

  
265
		sys.stdout.write(' test shutdown/start_server')
266
		self._test_shutdown_start_server()
267
		print('...ok')
268

  
269
		sys.stdout.write(' test get_server_console')
270
		self._test_get_server_console()	
271
		print('...ok')
272

  
273
		"""Don't have auth for these:
274
		sys.stdout.write(' test delete_image')
275
		self._test_delete_image()
276
		print('...ok')
277
		sys.stdout.write(' test create_image_metadata')
278
		self._test_create_image_metadata()
279
		print('...ok')
280
		sys.stdout.write(' test update_image_metadata')
281
		self._test_update_image_metadata()
282
		print('...ok')
283
		sys.stdout.write(' test delete_image_metadata')
284
		self._test_delete_image_metadata()
285
		print('...ok')
286
		"""
287

  
253 288
	def _has_status(self, servid, status):
254 289
		r = self.client.get_server_details(servid)
255 290
		return r['status'] == status
......
270 305
	def test_list_servers(self):
271 306
		"""Test list servers"""
272 307
		self.server1 = self._create_server(self.servname1, self.flavorid, self.img)
273
		self.server2 = self._create_server(self.servname2, self.flavorid, self.img)
308
		self.server2 = self._create_server(self.servname2, self.flavorid+1, self.img)
274 309
		self._test_list_servers()
275 310

  
276 311
	def _test_list_servers(self):
......
344 379
	def test_reboot_server(self):
345 380
		"""Test reboot server"""
346 381
		self.server1 = self._create_server(self.servname1, self.flavorid, self.img)
347
		self.server2 = self._create_server(self.servname2, self.flavorid, self.img)
382
		self.server2 = self._create_server(self.servname2, self.flavorid+1, self.img)
348 383
		self._test_reboot_server()
349 384

  
350 385
	def _test_reboot_server(self):
......
427 462
		r = self.client.get_flavor_details(self.flavorid)
428 463
		self.assert_dicts_are_deeply_equal(self.flavor_details, r)
429 464

  
465
	@if_not_all
466
	def test_list_images(self):
467
		"""Test list_images"""
468
		self._test_list_images()
469

  
470
	def _test_list_images(self):
471
		r = self.client.list_images()
472
		self.assertTrue(len(r) > 1)
473
		r = self.client.list_images(detail=True)
474
		for detailed_img in r:
475
			if detailed_img['id'] == self.img:
476
				break
477
		self.assert_dicts_are_deeply_equal(r[1], self.img_details)
478

  
479
	@if_not_all
480
	def test_image_details(self):
481
		"""Test image_details"""
482
		self._test_get_image_details
483

  
484
	def _test_get_image_details(self):
485
		r = self.client.get_image_details(self.img)
486
		self.assert_dicts_are_deeply_equal(r, self.img_details)
487

  
488
	@if_not_all
489
	def test_get_image_metadata(self):
490
		"""Test get_image_metadata"""
491
		self._test_get_image_metadata()
492

  
493
	def _test_get_image_metadata(self):
494
		r = self.client.get_image_metadata(self.img)
495
		self.assert_dicts_are_deeply_equal(self.img_details['metadata']['values'], r)
496
		for key,val in self.img_details['metadata']['values'].items():
497
			r = self.client.get_image_metadata(self.img, key)
498
			self.assertEqual(r[key], val)
499

  
500
	@if_not_all
501
	def test_start_server(self):
502
		"""Test start_server"""
503
		self.server1 = self._create_server(self.servname1, self.flavorid, self.img)
504
		self._test_shutdown_start_server()
505
	@if_not_all
506
	def test_shutdown_server(self):
507
		"""Test shutdown_server"""
508
		self.server1 = self._create_server(self.servname1, self.flavorid, self.img)
509
		self._test_shutdown_start_server()
510

  
511
	def _test_shutdown_start_server(self):
512
		self._wait_for_status(self.server1['id'], 'BUILD')
513
		print('Shutdown Server %s'%self.server1['id'])
514
		self.client.shutdown_server(self.server1['id'])
515
		self._wait_for_status(self.server1['id'], 'ACTIVE')
516
		r = self.client.get_server_details(self.server1['id'])
517
		self.assertEqual(r['status'], 'STOPPED')
518
		print('Start Server %s'%self.server1['id'])
519
		self.client.start_server(self.server1['id'])
520
		self._wait_for_status(self.server1['id'], 'STOPPED')
521
		r = self.client.get_server_details(self.server1['id'])
522
		self.assertEqual(r['status'], 'ACTIVE')
523

  
524
	@if_not_all
525
	def test_get_server_console(self):
526
		"""Test get_server_console"""
527
		self.server2 = self._create_server(self.servname2, self.flavorid, self.img)
528
		self._test_get_server_console()
529

  
530
	def _test_get_server_console(self):
531
		self._wait_for_status(self.server2['id'], 'BUILD')
532
		r = self.client.get_server_console(self.server2['id'])
533
		self.assertTrue(r.has_key('host'))
534
		self.assertTrue(r.has_key('password'))
535
		self.assertTrue(r.has_key('port'))
536
		self.assertTrue(r.has_key('type'))
537

  
538
	""" Don't have auth to test this
539
	@if_not_all
540
	def test_delete_image(self):
541
		""Test delete_image""
542
		self._test_delete_image()
543
	def _test_delete_image(self):
544
		images = self.client.list_images()
545
		self.client.delete_image(images[2]['id'])
546
		try:
547
			r = self.client.get_image_details(images[2]['id'], success=(400))
548
		except ClientError as err:
549
			self.assertEqual(err.status, 404)
550

  
551
	@if_not_all
552
	def test_create_image_metadata(self):
553
		""Test create_image_metadata""
554
		self._test_create_image_metadata()
555
	def _test_create_image_metadata(self):
556
		r = self.client.create_image_metadata(self.img, 'mykey', 'myval')
557
		self.assertEqual(r['mykey'], 'myval')
558

  
559
	@if_not_all
560
	def test_update_image_metadata(self):
561
		""Test update_image_metadata""
562
		self._test_update_image_metadata()
563
	def _test_update_image_metadata(self):
564
		r = self.client.create_image_metadata(self.img, 'mykey0', 'myval')
565
		r = self.client.update_image_metadata(self.img, 'mykey0', 'myval0')
566
		self.assertEqual(r['mykey0'], 'myval0')
567

  
568
	@if_not_all
569
	def test_delete_image_metadata(self):
570
		""Test delete_image_metadata""
571
		self._test_delete_image_metadata()
572
	def _test_delete_image_metadata(self):
573
		self.client.create_image_metadata(self.img, 'mykey1', 'myval1')
574
		self.client.delete_image_metadata(self.img, 'mykey1')
575
		r = self.client.get_image_metadata(self.img)
576
		self.assertNotEqual(r.has_key('mykey1'))
577
	"""
578

  
430 579
class testPithos(unittest.TestCase):
431 580
	"""Set up a Pithos+ thorough test"""
432 581
	def setUp(self):

Also available in: Unified diff