jh629g 7241704336 Minor fixes for Ranger flavor tests
Fixed test that gave false positives
and false negatives, added skipcheck
to that test. Updated config value to
boolean so that test skipchecks in flavor
tests worked as expected. Added function
for checking the status of individual
regions on a flavor.

Change-Id: I331e12a757b8eb1182cb88a19a8fd9607358143e
2020-06-04 07:55:10 -05:00

74 lines
2.8 KiB
Python
Executable File

# Copyright 2016 AT&T Corp
# 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
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from oslo_log import log as logging
from ranger_tempest_plugin import clients
from tempest import config
from tempest import test
CONF = config.CONF
LOG = logging.getLogger(__name__)
class BaseOrmTest(test.BaseTestCase):
client_manager = clients.OrmClientManager
credentials = ['admin', 'primary', 'alt']
identity_url = CONF.identity.uri_v3 or ""
identity_url = identity_url.strip('/v3')
build_timeout = 120
build_interval = 10
@classmethod
def setup_credentials(cls):
cls.set_network_resources()
super(BaseOrmTest, cls).setup_credentials()
@classmethod
def setup_clients(cls):
cls.project_client = cls.os_admin.projects_client
cls.region_client = cls.os_admin.rms_client
# Get regions in ranger deployment
_, regions_list = cls.region_client.list_regions()
regions = [x for x in regions_list['regions']]
for region in regions:
if region['id'] is CONF.identity.region or \
(region['id'] is 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)
super(BaseOrmTest, cls).setup_clients()
@classmethod
def skip_checks(cls):
super(BaseOrmTest, cls).skip_checks()
if not CONF.service_available.ranger:
skip_msg = ("%s skipped as ranger is not available" % cls.__name__)
raise cls.skipException(skip_msg)
# ranger service availability should not be in conf. It should be set
# by ranger pods during deployment to a site.
def assert_expected(self, expected, actual, excluded_keys):
for key, value in list(expected.items()):
if key not in excluded_keys:
self.assertIn(key, actual)
self.assertEqual(value, actual[key], key)