From c33bd50a79571e64267bd8d5762bd94f7ef5ca81 Mon Sep 17 00:00:00 2001 From: Hengqing Hu Date: Mon, 9 Jan 2012 17:03:15 +0800 Subject: Fix bad test cases in smoketest. Fixes bug #912650. Fixes the following test cases in smoketests/test_netadmin.py:SecurityGroupTests: 'test_004_can_access_metadata_over_public_ip' 'test_005_validate_metadata' 'test_999_tearDown' Change-Id: Iefa8034a364e13243d06200e8af1840df896baf3 --- smoketests/test_netadmin.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/smoketests/test_netadmin.py b/smoketests/test_netadmin.py index c7db64f42..d097d232a 100644 --- a/smoketests/test_netadmin.py +++ b/smoketests/test_netadmin.py @@ -161,20 +161,23 @@ class SecurityGroupTests(base.UserSmokeTestCase): result = self.conn.associate_address(self.data['instance'].id, self.data['public_ip']) start_time = time.time() - try: - while not self.__public_instance_is_accessible(): - # 1 minute to launch - if time.time() - start_time > 60: - raise Exception("Timeout") - time.sleep(1) - finally: - result = self.conn.disassociate_address(self.data['public_ip']) + while not self.__public_instance_is_accessible(): + # 1 minute to launch + if time.time() - start_time > 60: + raise Exception("Timeout") + time.sleep(1) def test_005_validate_metadata(self): - instance = self.data['instance'] - self.assertTrue(instance.instance_type, - self.__get_metadata_item("instance-type")) + start_time = time.time() + instance_type = False + while not instance_type: + instance_type = self.__get_metadata_item('instance-type') + # 10 seconds to restart proxy + if time.time() - start_time > 10: + raise Exception("Timeout") + time.sleep(1) + self.assertEqual(instance.instance_type, instance_type) #FIXME(dprince): validate more metadata here def test_006_can_revoke_security_group_ingress(self): @@ -190,6 +193,7 @@ class SecurityGroupTests(base.UserSmokeTestCase): time.sleep(1) def test_999_tearDown(self): + self.conn.disassociate_address(self.data['public_ip']) self.conn.delete_key_pair(TEST_KEY) self.conn.delete_security_group(TEST_GROUP) groups = self.conn.get_all_security_groups() -- cgit