public async Task ReturnOtpInValidBadRequest() { var sessionId = TestBuilder.Faker().Random.Hash(); var otpRequest = new OtpVerificationRequest("1234"); otpRepository.Setup(e => e.GetWith(sessionId)) .ReturnsAsync(Option.Some(new OtpRequest { SessionId = sessionId, OtpToken = "random" })); var response = await otpController.VerifyOtp(sessionId, otpRequest); otpRepository.Verify(); response.Should().BeOfType <BadRequestObjectResult>(); }
public async Task ReturnOtpValidResponse() { var sessionId = TestBuilder.Faker().Random.Hash(); var otpToken = TestBuilder.Faker().Random.String(); var otpRequest = new OtpVerificationRequest(otpToken); otpRepository .Setup(e => e.GetWith(sessionId)) .ReturnsAsync(Option.Some(new OtpRequest { SessionId = sessionId, RequestedAt = DateTime.Now.ToUniversalTime(), OtpToken = otpToken })); var response = await otpController.VerifyOtp(sessionId, otpRequest); otpRepository.Verify(); response.Should().NotBeNull() .And.Subject.As <OkObjectResult>() .Value.Should().BeEquivalentTo(new Response(ResponseType.OtpValid, "Valid OTP")); }