Example #1
0
        public void CheckOtpTest(string digest, string phone, int otp, string auth)
        {
            var client  = new RestClient(TestConfiguration.API.Location);
            var request = new RestRequest("/user/otp_check", Method.GET);

            request
            .AddParameter("digest", digest)
            .AddParameter("phone", phone)
            .AddParameter("otp", otp)
            .AddHeader("Authorization", auth);

            var response = client.Execute <CheckOtpModel>(request);

            GlobalLogic.EnsureOkResponseStatusCode(response, client, request);

            List <string> allErrorMessages = new List <string>();

            ValidationResultModel <CheckOtpModel> checkotpResults;
            var isCheckOtpDataValid = GlobalLogic.IsModelValid(response.Data, out checkotpResults);

            if (!isCheckOtpDataValid)
            {
                var message = $"CheckOtp with success: {checkotpResults.Model.Success} and username: {checkotpResults.Model.Username}."
                              .RequestInfo(client, request)
                              .WithValidationErrors(checkotpResults.Results);

                allErrorMessages.Add(message);
            }
            if (allErrorMessages.Any())
            {
                var allMessages = string.Join("\r\n\r\n", allErrorMessages);
                throw new Exception(allMessages);
            }
        }
Example #2
0
        public void SendOtpTest(string digest, string phone, string auth, string contentType)
        {
            var client  = new RestClient(TestConfiguration.API.Location);
            var request = new RestRequest("user/otp_set?digest={digest}", Method.POST);

            request
            .AddUrlSegment("digest", digest)
            .AddHeader("Content-Type", contentType)
            .AddHeader("Authorization", auth)
            .AddJsonBody(new
            {
                phone = phone
            });


            var response = client.Execute <RegisterRequestModel>(request);

            GlobalLogic.EnsureOkResponseStatusCode(response, client, request);


            List <string> allErrorMessages = new List <string>();

            ValidationResultModel <RegisterRequestModel> sendotpResults;
            var isSendOtpValid = GlobalLogic.IsModelValid(response.Data, out sendotpResults);

            if (!isSendOtpValid)
            {
                var message = $"SendOtp with success: {sendotpResults.Model.Success}"
                              .RequestInfo(client, request)
                              .WithValidationErrors(sendotpResults.Results);

                allErrorMessages.Add(message);
            }

            if (allErrorMessages.Any())
            {
                var allMessages = string.Join("\r\n\r\n", allErrorMessages);
                throw new Exception(allMessages);
            }
        }