def test_ok_score_admin_request(): """ Tests ok request from admin """ arguments = {"phone": "79175002040", "email": "*****@*****.**"} request = { "account": "horns&hoofs", "login": "******", "method": "online_score", "arguments": arguments } test_context = dict() set_valid_auth(request) response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=test_context, store=KeyValueTestStorage()) assert code == api.OK score = response.get("score") assert score == 42 assert "has" in test_context assert len(test_context["has"]) == 2 assert "phone" in test_context["has"] assert "email" in test_context["has"]
def test_ok_interests_request(param_test_ok_interests_request): """ Tests ok clients interests request """ test_context = dict() request_arguments, test_store = param_test_ok_interests_request request = { "account": "horns&hoofs", "login": "******", "method": "clients_interests", "arguments": request_arguments } set_valid_auth(request) response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=test_context, store=test_store) assert code == api.OK assert len(request_arguments["client_ids"]) == len(response) assert all( v and isinstance(v, list) and all(isinstance(i, str) for i in v) for v in response.values()) assert test_context.get("nclients") == len(request_arguments["client_ids"])
def test_invalid_method_request(param_test_invalid_method_request): """ :param param_test_invalid_method_request: :return: """ set_valid_auth(param_test_invalid_method_request) response, code = api.method_handler(request={ "body": param_test_invalid_method_request, "headers": dict() }, ctx=dict(), store=KeyValueTestStorage()) assert code == api.INVALID_REQUEST assert response
def test_invalid_phone_score_request(param_test_invalid_phone_score_request): """ Tests invalid phone score request """ request = { "account": "horns&hoofs", "login": "******", "method": "online_score", "arguments": param_test_invalid_phone_score_request } set_valid_auth(request) response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=dict(), store=KeyValueTestStorage()) assert code == api.INVALID_REQUEST assert "phone" in response assert len(response) == 1
def test_invalid_interests_request(param_test_invalid_interests_request): """ Tests invalid clients interests request """ request = { "account": "horns&hoofs", "login": "******", "method": "clients_interests", "arguments": param_test_invalid_interests_request } set_valid_auth(request) response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=dict(), store=KeyValueTestStorage()) assert code == api.INVALID_REQUEST assert response
def test_invalid_date_interests_request( param_test_invalid_date_interests_request): """ Tests clients_interests request with invalid date """ request_arguments, test_store = param_test_invalid_date_interests_request request = { "account": "horns&hoofs", "login": "******", "method": "clients_interests", "arguments": request_arguments } set_valid_auth(request) response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=dict(), store=test_store) assert code == api.INVALID_REQUEST assert "date" in response assert len(response) == 1
def test_ok_score_request(param_test_ok_score_request): """ Tests ok score request """ request = { "account": "horns&hoofs", "login": "******", "method": "online_score", "arguments": param_test_ok_score_request } set_valid_auth(request) test_context = dict() response, code = api.method_handler(request={ "body": request, "headers": dict() }, ctx=test_context, store=KeyValueTestStorage()) assert code == api.OK score = response.get("score") assert isinstance(score, (int, float)) and score >= 0 assert sorted(test_context["has"]) == sorted(param_test_ok_score_request)