From d62873fddffddca57328f987e5806dc3f289d30c Mon Sep 17 00:00:00 2001 From: Robert Myers Date: Wed, 23 Oct 2013 11:41:39 -0500 Subject: [PATCH] Fix white_box mode for integration tests. * Removing outdated logic and old test paths that are hit when running instances tests in white_box mode. Fixes: Bug #1243793 Change-Id: I944b63b9cf9ca0f5d8d2139cb2974f4c804ca30a --- trove/tests/api/backups.py | 15 ++++---- trove/tests/api/instances.py | 74 ------------------------------------ 2 files changed, 8 insertions(+), 81 deletions(-) diff --git a/trove/tests/api/backups.py b/trove/tests/api/backups.py index 4a343ab8e4..ee97f387d1 100644 --- a/trove/tests/api/backups.py +++ b/trove/tests/api/backups.py @@ -29,6 +29,7 @@ from troveclient.compat import exceptions from trove.tests.api.instances import WaitForGuestInstallationToFinish from trove.tests.api.instances import instance_info from trove.tests.api.instances import assert_unprocessable +from trove import tests GROUP = "dbaas.api.backups" @@ -41,7 +42,7 @@ restore_instance_id = None @test(depends_on_classes=[WaitForGuestInstallationToFinish], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class CreateBackups(object): @test @@ -87,7 +88,7 @@ class CreateBackups(object): @test(runs_after=[CreateBackups], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class AfterBackupCreation(object): @test @@ -112,7 +113,7 @@ class AfterBackupCreation(object): @test(runs_after=[AfterBackupCreation], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class WaitForBackupCreateToFinish(object): """ Wait until the backup create is finished. @@ -134,7 +135,7 @@ class WaitForBackupCreateToFinish(object): @test(depends_on=[WaitForBackupCreateToFinish], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class ListBackups(object): @test @@ -184,7 +185,7 @@ class ListBackups(object): @test(runs_after=[ListBackups], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class RestoreUsingBackup(object): @test @@ -206,7 +207,7 @@ class RestoreUsingBackup(object): @test(depends_on_classes=[RestoreUsingBackup], runs_after=[RestoreUsingBackup], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class WaitForRestoreToFinish(object): """ Wait until the instance is finished restoring. @@ -235,7 +236,7 @@ class WaitForRestoreToFinish(object): @test(runs_after=[WaitForRestoreToFinish], - groups=[GROUP]) + groups=[GROUP, tests.INSTANCES]) class DeleteBackups(object): @test diff --git a/trove/tests/api/instances.py b/trove/tests/api/instances.py index 02254428b9..891b04fceb 100644 --- a/trove/tests/api/instances.py +++ b/trove/tests/api/instances.py @@ -171,24 +171,9 @@ class InstanceSetup(object): instance_info.user = CONFIG.users.find_user(reqs) instance_info.dbaas = create_dbaas_client(instance_info.user) - if CONFIG.white_box: - instance_info.nova_client = create_nova_client(instance_info.user) - instance_info.volume_client = create_nova_client( - instance_info.user, - service_type=CONFIG.nova_client['volume_service_type']) global dbaas dbaas = instance_info.dbaas - if CONFIG.white_box: - user = instance_info.user.auth_user - tenant = instance_info.user.tenant - instance_info.user_context = context.RequestContext(user, tenant) - - @test(enabled=CONFIG.white_box) - def find_image(self): - result = dbaas_admin.find_image_and_self_href(CONFIG.dbaas_image) - instance_info.dbaas_image, instance_info.dbaas_image_href = result - @test def test_find_flavor(self): if EPHEMERAL_SUPPORT: @@ -208,25 +193,6 @@ class InstanceSetup(object): instance_info.dbaas_flavor = flavor instance_info.dbaas_flavor_href = flavor_href - @test(enabled=CONFIG.white_box) - def test_add_imageref_config(self): - #TODO(tim.simpson): I'm not sure why this is here. The default image - # setup should be in initialization test code that lives somewhere - # else, probably with the code that uploads the image. - key = "trove_imageref" - value = 1 - description = "Default Image for Trove" - config = {'key': key, 'value': value, 'description': description} - try: - dbaas_admin.configs.create([config]) - except exceptions.ClientException: - # configs.create will throw an exception if the config already - # exists we will check the value after to make sure it is correct - # and set - pass - result = dbaas_admin.configs.get(key) - assert_equal(result.value, str(value)) - @test def create_instance_name(self): id = existing_instance() @@ -373,15 +339,10 @@ class CreateInstance(object): result = instance_info.initial_result instance_info.id = result.id - if CONFIG.white_box: - instance_info.local_id = dbapi.localid_from_uuid(result.id) report = CONFIG.get_report() report.log("Instance UUID = %s" % instance_info.id) if create_new_instance(): - if CONFIG.white_box: - building = dbaas_mapping[power_state.BUILDING] - assert_equal(result.status, building) assert_equal("BUILD", instance_info.initial_result.status) else: @@ -727,20 +688,6 @@ class TestGuestProcess(object): diagnostic_tests_helper(diagnostics) -@test(depends_on_classes=[CreateInstance], - groups=[GROUP, GROUP_START, GROUP_START_SIMPLE, GROUP_TEST, - "nova.volumes.instance"], - enabled=CONFIG.white_box) -class TestVolume(unittest.TestCase): - """Make sure the volume is attached to instance correctly.""" - - def test_db_should_have_instance_to_volume_association(self): - """The compute manager should associate a volume to the instance.""" - volumes = db.volume_get_all_by_instance(context.get_admin_context(), - instance_info.local_id) - self.assertEqual(1, len(volumes)) - - @test(depends_on_classes=[WaitForGuestInstallationToFinish], groups=[GROUP, GROUP_TEST, "dbaas.guest.start.test"]) class TestAfterInstanceCreatedGuestData(object): @@ -950,13 +897,6 @@ class DeleteInstance(object): global dbaas if not hasattr(instance_info, "initial_result"): raise SkipTest("Instance was never created, skipping test...") - if CONFIG.white_box: - # Change this code to get the volume using the API. - # That way we can keep it while keeping it black box. - admin_context = context.get_admin_context() - volumes = db.volume_get_all_by_instance(admin_context(), - instance_info.local_id) - instance_info.volume_id = volumes[0].id # Update the report so the logs inside the instance will be saved. CONFIG.get_report().update() dbaas.instances.delete(instance_info.id) @@ -1067,7 +1007,6 @@ class VerifyInstanceMgmtInfo(object): info = instance_info ir = info.initial_result cid = ir.id - instance_id = instance_info.local_id expected = { 'id': cid, 'name': ir.name, @@ -1088,19 +1027,6 @@ class VerifyInstanceMgmtInfo(object): ], } - if CONFIG.white_box: - admin_context = context.get_admin_context() - volumes = db.volume_get_all_by_instance(admin_context(), - instance_id) - assert_equal(len(volumes), 1) - volume = volumes[0] - expected['volume'] = { - 'id': volume.id, - 'name': volume.display_name, - 'size': volume.size, - 'description': volume.display_description, - } - expected_entry = info.expected_dns_entry() if expected_entry: expected['hostname'] = expected_entry.name