def test_create_arbitration_rule_with_invalid_profile( self, request, appliance): """Tests creation of arbitration rule referencing invalid arbitration profile. Metadata: test_flag: rest """ data = [{ 'description': 'test admin rule {}'.format(fauxfactory.gen_alphanumeric(5)), 'operation': 'inject', 'arbitration_profile': 'invalid_value', 'expression': { 'EQUAL': { 'field': 'User-userid', 'value': 'admin' } } }] response = creating_skeleton(request, appliance.rest_api, 'arbitration_rules', data) # this will fail once BZ 1433477 is fixed - change and expand the test accordingly assert_response(appliance) for rule in response: assert not hasattr(rule, 'arbitration_profile_id')
def test_create_arbitration_rules_with_profile(self, request, appliance, arbitration_profiles): """Tests creation of arbitration rules referencing arbitration profiles. Metadata: test_flag: rest """ num_rules = 2 profile = arbitration_profiles[0] references = [{'id': profile.id}, {'href': profile._href}] data = [] for index in range(num_rules): data.append({ 'description': 'test admin rule {}'.format(fauxfactory.gen_alphanumeric(5)), 'operation': 'inject', 'arbitration_profile': references[index % 2], 'expression': { 'EQUAL': { 'field': 'User-userid', 'value': 'admin' } } }) response = creating_skeleton(request, appliance.rest_api, 'arbitration_rules', data) assert_response(appliance) assert len(response) == num_rules for rule in response: record = appliance.rest_api.collections.arbitration_rules.get( id=rule.id) assert record.arbitration_profile_id == rule.arbitration_profile_id == profile.id
def test_create_arbitration_rule_with_invalid_profile(self, request, appliance): """Tests creation of arbitration rule referencing invalid arbitration profile. Metadata: test_flag: rest """ data = [{ 'description': 'test admin rule {}'.format(fauxfactory.gen_alphanumeric(5)), 'operation': 'inject', 'arbitration_profile': 'invalid_value', 'expression': {'EQUAL': {'field': 'User-userid', 'value': 'admin'}} }] response = creating_skeleton(request, appliance.rest_api, 'arbitration_rules', data) # this will fail once BZ 1433477 is fixed - change and expand the test accordingly assert_response(appliance) for rule in response: assert not hasattr(rule, 'arbitration_profile_id')
def test_create_arbitration_rules_with_profile(self, request, appliance, arbitration_profiles): """Tests creation of arbitration rules referencing arbitration profiles. Metadata: test_flag: rest """ num_rules = 2 profile = arbitration_profiles[0] references = [{'id': profile.id}, {'href': profile._href}] data = [] for index in range(num_rules): data.append({ 'description': 'test admin rule {}'.format(fauxfactory.gen_alphanumeric(5)), 'operation': 'inject', 'arbitration_profile': references[index % 2], 'expression': {'EQUAL': {'field': 'User-userid', 'value': 'admin'}} }) response = creating_skeleton(request, appliance.rest_api, 'arbitration_rules', data) assert_response(appliance) assert len(response) == num_rules for rule in response: record = appliance.rest_api.collections.arbitration_rules.get(id=rule.id) assert record.arbitration_profile_id == rule.arbitration_profile_id == profile.id