def test_add_conference_without_users(send_request, delete_conference): data = parse_request('post_conference', {'$name':random_string(), '$description':random_string()}) response = send_request(URL.svc_conference, data['request']) assert response.status_code == 200 delete_conference.append(response.json()['id']) assert response.json()['users'] == []
def test_add_group(send_request, delete_group_and_criteria): data = parse_request('post_criteria_group', {'$name':random_string()}) response = send_request(URL.criteria_group, data['request']) instance = response.json() delete_group_and_criteria['criteriaGroupId'].append(instance['id']) assert response.status_code == 200 assert equal_schema(instance, data['schema'])
def setup_add_criterias(send_request): criteria_names = parse_request('criteria_names', default=True) group_and_criteria_id = {} for criteria_groups in criteria_names: payload = {"groups": [{"id": 2}], "name": criteria_groups} response = send_request(url=URL.criteria_group, data=payload) criteria_group_id = response.json()['id'] group_and_criteria_id[criteria_group_id] = [] for names in criteria_names[criteria_groups]: criteria_data = { "name": names[0], "description": names[1], "criteriaGroup": { "id": response.json()['id'] } } response_criteria = send_request(url=URL.criteria, data=criteria_data) group_and_criteria_id[criteria_group_id].append( response_criteria.json()['id']) yield group_and_criteria_id for group in group_and_criteria_id: for criteria in group_and_criteria_id[group]: data = {'id': criteria} send_request(URL.criteria, method='DELETE', params=data) data = {"criteriaGroupId": group} send_request(URL.delete_criteria_group, data)
def test_add_group_with_existing_name(send_request, add_group): existing_group_name = next(add_group)['name'] data = parse_request('post_criteria_group', {'$name': existing_group_name}) response = send_request(URL.criteria_group, data['request']) answer = {"QOS_ENTITY_WITH_SUCH_FIELD_EXISTS":"QoSEntityWithSuchFieldExists: NAME"} assert response.status_code == 500 assert response.json() == answer
def test_add_user_with_CMS_USER_userType(send_request): data = parse_request('post_users', {'$name':random_string(), '$email':random_string(), '$userType':"CMS_USER"}) response = send_request(URL.svc_users, data['request']) expect_answer = {'SVC_REQUEST_VALIDATION_EXCEPTION': 'SVCRequestValidationException: Unable to add cms user'} assert response.status_code == 500 assert response.json() == expect_answer
def add_integration_with_password(send_request, clear_result): data = parse_request('integration', data={'$name': random_string(), '$url': random_string(), '$login': random_string(), '$password': random_string()}) response = send_request(url=sesl_integration, data=data['request_body']) yield response.json() clear_result['url'], clear_result['id'] = sesl_integration, response.json()['id']
def test_add_criteria_without_criteria_group(send_request): data = parse_request('post_criteria', {'$name': random_string(), '$description': random_string(), "$criteriagroupId":None}) response = send_request(URL.criteria, data['request']) answer = {'QOS_REQUEST_VALIDATION_EXCEPTION': "QOSRequestValidationException: CriteriaGroup can't be empty"} assert response.status_code == 500 assert response.json() == answer
def add_one_tag(send_request, add_one_integration): integrationId = add_one_integration['id'] data = parse_request("tag", method ="POST", data={"$tag":random_string(), "$integrationId":integrationId, "$position": "1"}) response = send_request(sesl_tag, data['request_body']) yield response.json() send_request(method = "DELETE", url = sesl_tag, params = {'id':response.json()['id']})
def add_one_map(send_request, add_one_integration): exitsting_integration = add_one_integration data = parse_request("mapfield", method="POST", data = {"$databaseColumn": random_string(), "$title": random_string(), "$position": 1, "$integrationId": exitsting_integration['id']}) response = send_request(sesl_mapfield, data['request_body']) return response.json()
def test_add_conference_with_empty_name(send_request, get_users): users = get_users['device'] + get_users["cms_user"] data = parse_request('post_conference', {'$name':None, '$description':None, "$users":users}) response = send_request(URL.svc_conference, data['request']) expected_response = {'SVC_VALIDATION_CONFERENCE_NAME_EMPTY': 'Conference name is empty'} assert response.status_code == 400 assert response.json() == expected_response
def test_add_user_with_DEVICE_userType(send_request, delete_user): data = parse_request('post_users', {'$name':random_string(), '$email':random_string(), '$userType':"DEVICE"}) response = send_request(URL.svc_users, data['request']) instance = response.json() assert response.status_code == 200 delete_user.append(instance['id']) assert equal_schema(instance, data['schema'])
def test_add_user_with_existing_email(send_request, add_user): existing_email = next(add_user)['email'] data = parse_request('post_users', {'$name':random_string(), '$email':existing_email, '$userType':"DEVICE"}) response = send_request(URL.svc_users, data['request']) expected_response = {'SVC_ENTITY_WITH_SUCH_FIELD_EXIST_EXCEPTION': 'SVCEntityWithSuchFieldAlreadyExistException: User with email="%s" already exists'%existing_email} assert response.status_code == 500 assert response.json() == expected_response
def test_add_user_without_name_and_email(send_request): data = parse_request('post_users', {'$name':None, '$email':None, '$userType':"DEVICE"}) response = send_request(URL.svc_users, data['request']) expect_answer = {'SVC_VALIDATION_USER_EMAIL_EMPTY': 'User email is empty', 'SVC_VALIDATION_USER_NAME_EMPTY': 'User name is empty'} assert response.status_code == 400 assert response.json() == expect_answer
def test_edit_criteria_group_with_unknown_id(send_request): randomId = random.randint(1,9999) data = parse_request('put_criteria_group', {'$name': random_string(), '$criteriaGroupId':randomId, '$groupId':ROOT_group_id}) response = send_request(URL.criteria_group, data['request'], method = "PUT") expect_answer = {'QOS_REQUEST_VALIDATION_EXCEPTION': 'QOSRequestValidationException: CriteriaGroup with id does not exist'} assert response.status_code == 500 assert response.json() == expect_answer
def test_add_criteria_without_description_and_name(send_request, add_group): group_id = next(add_group)['id'] data = parse_request('post_criteria', {'$criteriagroupId': group_id}) response = send_request(URL.criteria, data['request']) answer = {'QOS_TEMPLATE_CRITERIA_DESCRIPTION': 'DESCRIPTION length from 1 to 1024 characters. Сriteria id=[null]', 'QOS_TEMPLATE_CRITERIA_NAME': 'NAME length from 1 to 255 characters. Сriteria id=[null]'} assert response.status_code == 400 assert answer == response.json()
def test_edit_criteria_group_name_on_empty(add_group, send_request): group_id = next(add_group)['id'] data = parse_request('put_criteria_group', {'$name': None, '$criteriaGroupId':group_id, '$groupId':ROOT_group_id}) response = send_request(URL.criteria_group, data['request'], method = "PUT") answer = {'QOS_TEMPLATE_CRITERIA_GROUP_NAME': 'NAME length from 1 to 255 characters.'} assert response.status_code == 400 assert answer == response.json()
def test_edit_criteria_group(add_group, send_request): group_id = next(add_group)['id'] data = parse_request('put_criteria_group', {'$name': random_string(), '$criteriaGroupId':group_id, '$groupId':ROOT_group_id}) response = send_request(URL.criteria_group, data['request'], method = "PUT") instance = response.json() assert response.status_code == 200 assert equal_schema(instance, data['schema'])
def test_edit_user(send_request, add_user): user_id = next(add_user)['id'] data = parse_request("put_users", {"$id":user_id, "$email":random_string(), "$name":random_string(), "$userType":"DEVICE"}) response = send_request(method = "PUT", url = URL.svc_users, data=data['request']) assert response.status_code == 200 assert equal_schema(response.json(), data['schema'])
def test_edit_criteria_on_unknown_or_empty_criteriaGroup(send_request, add_criteria): criteria_for_edit = next(add_criteria) data = parse_request('put_criteria', {'$criteriaId': criteria_for_edit['id'], '$name': random_string(), '$criteriaGroupId': None, '$description': random_string()}) response = send_request(URL.criteria, data['request'], method="PUT") answer = {'QOS_REQUEST_VALIDATION_EXCEPTION': "QOSRequestValidationException: Criteria group can't be changed"} assert response.status_code == 500 assert response.json() == answer
def test_add_conference_with_existing_name(send_request, add_conference, get_users): existing_name = next(add_conference)['name'] users = get_users['device'] + get_users["cms_user"] data = parse_request('post_conference', {'$name':existing_name, '$description':random_string(), "$users":users}) response = send_request(URL.svc_conference, data['request']) expected_response = {'SVC_ENTITY_WITH_SUCH_FIELD_EXIST_EXCEPTION': 'SVCEntityWithSuchFieldAlreadyExistException: Conference with name="%s" already exists'%existing_name} assert response.status_code == 500 assert response.json() == expected_response
def test_edit_criteria_group_name_on_existing(add_group, send_request): existing_name = next(add_group)['name'] group_id = next(add_group)['id'] data = parse_request('put_criteria_group', {'$name': existing_name, '$criteriaGroupId':group_id, '$groupId':ROOT_group_id}) response = send_request(URL.criteria_group, data['request'], method = "PUT") answer = {'QOS_ENTITY_WITH_SUCH_FIELD_EXISTS': 'QoSEntityWithSuchFieldExists: NAME'} assert response.status_code == 500 assert response.json() == answer
def add_one_integration(send_request): data = parse_request('integration', method ="POST", data={'$name': random_string(), '$url': random_string(), '$login': random_string(), '$password': None}) response = send_request(url=sesl_integration, data=data['request_body']) to_return = response.json() to_return['integrationId'] = response.json()['id'] yield to_return send_request(method = "DELETE", url=sesl_integration, params={'id':response.json()['id']})
def test_edit_criteria_name_and_description(send_request, add_criteria): criteria_for_edit = next(add_criteria) data = parse_request('put_criteria', {'$criteriaId': criteria_for_edit['id'], '$name': random_string(), '$criteriaGroupId': criteria_for_edit['criteriaGroup']['id'], '$description':random_string()}) response = send_request(URL.criteria, data['request'], method = "PUT") instance = response.json() assert response.status_code == 200 assert equal_schema(instance, data['schema'])
def test_add_criteria_with_incorrect_criteria_group(send_request): random_id = random.randint(0, 9999999999) data = parse_request('post_criteria', {'$name': random_string(), '$description': random_string(), '$criteriagroupId': random_id}) response = send_request(URL.criteria, data['request']) answer = { 'DATA_ACCESS_ENTITY_NOT_FOUND_EXCEPTION': 'javax.persistence.EntityNotFoundException: Unable to find ua.com.smiddle.SmiddleQualityService.core.model.TemplateCriteriaGroup with id %s' % random_id} assert response.status_code == 500 assert response.json() == answer
def test_add_criteria_with_existing_name(send_request, add_criteria, delete_group_and_criteria): existing_criteria = next(add_criteria) data = parse_request('post_criteria', {'$name': existing_criteria['name'], '$criteriagroupId': existing_criteria['criteriaGroup']['id'], '$description':random_string()}) response = send_request(URL.criteria, data['request']) instance = response.json() #Шаг для удаления критерия delete_group_and_criteria['criteriaId'].append(instance['id']) assert response.status_code == 200 assert equal_schema(instance, data['schema'])
def test_edit_user_on_existing_email(send_request, add_user): existing_user_email = next(add_user)['email'] user_id = next(add_user)['id'] data = parse_request("put_users", {"$id":user_id, "$email":existing_user_email, "$name":random_string(), "$userType":"DEVICE"}) response = send_request(method = "PUT", url = URL.svc_users, data=data['request']) except_response = {'SVC_ENTITY_WITH_SUCH_FIELD_EXIST_EXCEPTION': 'SVCEntityWithSuchFieldAlreadyExistException: User with email="%s" already exists'%existing_user_email} assert response.status_code == 500 assert response.json() == except_response
def test_add_conference_with_DEVICE_user_only(send_request, delete_conference, add_user): device_user = [next(add_user)] data = parse_request('post_conference', {'$name':random_string(), '$description':random_string(), '$users':device_user}) print("DATA___________", data) response = send_request(URL.svc_conference, data['request']) print("RESPONSE__________", response.json()) assert response.status_code == 200 delete_conference.append(response.json()['id']) assert equal_schema(response.json(), data['schema'])
def test_add_conference_with_CMS_USER_only(send_request, delete_conference, get_users): users = get_users["cms_user"] data = parse_request('post_conference', {'$name':random_string(), '$description':random_string(), '$users':users}) print("DATA___________", data) response = send_request(URL.svc_conference, data['request']) print("RESPONSE__________", response.json()) assert response.status_code == 200 delete_conference.append(response.json()['id']) assert equal_schema(response.json(), data['schema'])
def add_user(send_request): users = [] for i in range(2): data = parse_request('post_users', {'$name':random_string(), '$email':random_string(), '$userType':"DEVICE"}) response = send_request(URL.svc_users, data['request']) users.append(response.json()) yield iter(users) for user in users: send_request(method = "DELETE", url=URL.svc_users, params = {'id':user['id']})
def test_add_conference_with_only_id_in_users(send_request, delete_conference, add_user): users = [{'id':next(add_user)['id']}] print(users) data = parse_request('post_conference', {'$name':random_string(), '$description':random_string(), '$users':users}) print("DATA___________", data) response = send_request(URL.svc_conference, data['request']) print("RESPONSE__________", response.json()) assert response.status_code == 200 delete_conference.append(response.json()['id'])