def test_load_validations_group(self, mock_get_object_client): swiftclient = mock.MagicMock(url='http://swift:8080/v1/AUTH_test') swiftclient.get_container.side_effect = ( ({}, []), # no custom validations ({}, [ {'name': 'VALIDATION_GROUPS_1_2.yaml', 'groups': ['group1', 'group2']}, {'name': 'VALIDATION_GROUP_1.yaml', 'groups': ['group1']}, {'name': 'VALIDATION_WITH_METADATA.yaml'} ] ) ) swiftclient.get_object.side_effect = ( ({}, VALIDATION_GROUPS_1_2), ({}, VALIDATION_GROUP_1), ({}, VALIDATION_WITH_METADATA), ) mock_get_object_client.return_value = swiftclient my_validations = validations.load_validations( mock_get_object_client(), plan='overcloud', groups=['group1']) expected = [VALIDATION_GROUPS_1_2_PARSED, VALIDATION_GROUP_1_PARSED] self.assertEqual(expected, my_validations)
def run(self, context): swift = self.get_object_client(context) try: return utils.load_validations( swift, plan=self.plan, groups=self.groups) except swiftexceptions.ClientException as err: msg = "Error loading validations from Swift: %s" % err return actions.Result(error={"msg": six.text_type(msg)})
def run(self, context): swift = self.get_object_client(context) try: return utils.load_validations(swift, plan=self.plan, groups=self.groups) except swiftexceptions.ClientException as err: msg = "Error loading validations from Swift: %s" % err return actions.Result(error={"msg": six.text_type(msg)})
def test_load_validations_no_group(self, mock_glob): mock_glob.return_value = ['VALIDATION_GROUP_1', 'VALIDATION_WITH_METADATA'] mock_open_context = mock.mock_open() mock_open_context().read.side_effect = [VALIDATION_GROUP_1, VALIDATION_WITH_METADATA] with mock.patch('tripleo_common.utils.validations.open', mock_open_context): my_validations = validations.load_validations() expected = [VALIDATION_GROUP_1_PARSED, VALIDATION_WITH_METADATA_PARSED] self.assertEqual(expected, my_validations)
def test_load_validations_no_group(self, mock_glob): mock_glob.return_value = [ 'VALIDATION_GROUP_1', 'VALIDATION_WITH_METADATA' ] mock_open_context = mock.mock_open() mock_open_context().read.side_effect = [ VALIDATION_GROUP_1, VALIDATION_WITH_METADATA ] with mock.patch('tripleo_common.utils.validations.open', mock_open_context): my_validations = validations.load_validations() expected = [VALIDATION_GROUP_1_PARSED, VALIDATION_WITH_METADATA_PARSED] self.assertEqual(expected, my_validations)
def test_load_validations_custom_gets_picked_over_default( self, mock_get_object_client): swiftclient = mock.MagicMock(url='http://swift:8080/v1/AUTH_test') swiftclient.get_container.side_effect = ( ({}, [{'name': 'FIRST_VALIDATION.yaml'}]), ({}, [{'name': 'FIRST_VALIDATION.yaml'}]) ) swiftclient.get_object.side_effect = ( ({}, VALIDATION_CUSTOM), ({}, VALIDATION_DEFAULT) ) mock_get_object_client.return_value = swiftclient my_validations = validations.load_validations( mock_get_object_client(), plan='overcloud') self.assertEqual(len(my_validations), 1) self.assertEqual('Custom validation', my_validations[0]['description'])
def run(self): validations = utils.load_validations() return { group for validation in validations for group in validation['groups'] }
def run(self): return utils.load_validations(groups=self.groups)
def run(self, context): validations = utils.load_validations() return { group for validation in validations for group in validation['groups'] }
def run(self, context): return utils.load_validations(groups=self.groups)