From 00681d0deb705d66d2142f99f4125a21ed98013a Mon Sep 17 00:00:00 2001 From: jh629g Date: Thu, 27 Aug 2020 14:28:47 -0500 Subject: [PATCH] Fix teardown steps falsely erroring out tests teardown steps executed at the end of threadrunners disrupt tests sometimes. Removed teardown which would harm other tests, improved error messages when ranger not available Change-Id: I1f01f5dfd928fcb4a8ec77d1fff1f0c9d6fd2dbb --- ranger_tempest_plugin/tests/api/base.py | 19 ++++++-------- .../tests/api/test_regions.py | 25 +++++++++++-------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/ranger_tempest_plugin/tests/api/base.py b/ranger_tempest_plugin/tests/api/base.py index df2bb95..dcc1709 100755 --- a/ranger_tempest_plugin/tests/api/base.py +++ b/ranger_tempest_plugin/tests/api/base.py @@ -57,9 +57,6 @@ class BaseOrmTest(test.BaseTestCase): # check if ranger region exists cls.region_client.get_region(CONF.identity.region) except exceptions.Unauthorized: - # delete test region - cls.addClassResourceCleanup(cls.region_client.delete_region, - CONF.identity.region) # create region for testing if it doesnt exist cls.region_client.create_region( **{'id': CONF.identity.region, @@ -91,12 +88,13 @@ class BaseOrmTest(test.BaseTestCase): % CONF.identity.region), 'type': 'ord' }]}) - except (exceptions.UnexpectedResponseCode, exceptions.NotFound): - raise cls.skipException("Test skipped, Ranger region unavailable") + except (exceptions.UnexpectedResponseCode, exceptions.NotFound) as e: + raise cls.skipException( + "Test skipped, Ranger region unavailable") from e + except Exception as exp: if "No route to host" in str(exp): - skip_msg = ("Tests skipped , Ranger not reachable: %s" % - str(exp)) + skip_msg = "Tests skipped, Ranger not available" raise cls.skipException(skip_msg) raise exp @@ -105,12 +103,12 @@ class BaseOrmTest(test.BaseTestCase): # if alt_region doesn't exist if CONF.ranger.alt_region_available is True: cls.region_client.get_region(CONF.ranger.alt_region) - except exceptions.Unauthorized: + except exceptions.Unauthorized as e: skip_msg = ("Tests skipped as Ranger alt region does not exist." " Create alternate ranger region before running" " these tests again or change alt_region_available" " to False to run against one site.") - raise cls.skipException(skip_msg) + raise cls.skipException(skip_msg) from e # Get regions in ranger deployment _, regions_list = cls.region_client.list_regions() @@ -118,9 +116,6 @@ class BaseOrmTest(test.BaseTestCase): if region['id'] == CONF.identity.region or \ (region['id'] == CONF.ranger.alt_region and CONF.ranger.alt_region_available is True): - cls.addClassResourceCleanup(cls.region_client.update_region, - region['id'], - **region) region['domainName'] = CONF.auth.admin_domain_name cls.region_client.update_region(region['id'], **region) diff --git a/ranger_tempest_plugin/tests/api/test_regions.py b/ranger_tempest_plugin/tests/api/test_regions.py index 7aa2bf8..6d8f5fb 100755 --- a/ranger_tempest_plugin/tests/api/test_regions.py +++ b/ranger_tempest_plugin/tests/api/test_regions.py @@ -1,5 +1,5 @@ # Copyright 2016 AT&T Corp -# All Rights Reserved. +# All Rights Reserved # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain @@ -24,7 +24,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): def _list_regions_with_filter(self, filter, key): _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue( all([region[key] == self.region_1[key] for region in regions])) @@ -63,8 +63,13 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): @decorators.idempotent_id('b3310e32-0c31-4d37-9789-cc3c4639dabe') def test_list_region_with_osversion(self): - filter = {'osversion': self.region_1['OSVersion']} - self._list_regions_with_filter(filter, 'OSVersion') + value = self.region_1['OSVersion'] + filter = {'osversion': value} + _, body = self.client.list_regions(filter) + regions = body['regions'] + self.assertTrue( + all(region['OSVersion'].lower() + == self.region_1['OSVersion'].lower() for region in regions)) @decorators.idempotent_id('0b2d3e79-c14a-4527-94b0-04eeae053a80') def test_list_region_with_status(self): @@ -85,7 +90,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): def test_list_region_with_metadata(self): filter = {'metadata': list(self.region_2['metadata'].keys())[0]} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] for r in regions: self.assertIn(filter['metadata'], r['metadata'].keys()) @@ -114,7 +119,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): # Filter by country filter = {'country': region_body['address']['country']} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue(all( [region['address']['country'] == region_body['address']['country'] for region in regions])) @@ -122,7 +127,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): # Filter by state filter = {'state': region_body['address']['state']} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue(all( [region['address']['state'] == region_body['address']['state'] for region in regions])) @@ -130,7 +135,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): # Filter by city filter = {'city': region_body['address']['city']} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue(all( [region['address']['city'] == region_body['address']['city'] for region in regions])) @@ -138,7 +143,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): # Filter by street filter = {'street': region_body['address']['street']} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue(all( [region['address']['street'] == region_body['address']['street'] for region in regions])) @@ -146,7 +151,7 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest): # Filter by zip filter = {'zip': region_body['address']['zip']} _, body = self.client.list_regions(filter) - regions = [x for x in body['regions']] + regions = body['regions'] self.assertTrue(all( [region['address']['zip'] == region_body['address']['zip'] for region in regions]))