public void Returns_the_expected_model_when_calling_SubmitSMSRegistration() { _mockJourneyViewModelBuilder.Setup(r => r.Build(AnyQuestionViewModel(), AnyQuestionWithAnswers())).ReturnsAsync(new JourneyViewModel { Journey = _journeyModel }); var journeyJson = JsonConvert.SerializeObject(_journeyModel); var smsOutcomeViewModel = new SendSmsOutcomeViewModel { Journey = _journeyModel, VerificationCodeInput = new VerificationCodeInputViewModel { InputValue = "DxC112" }, JourneyJson = journeyJson, }; var returnedModel = new SMSRegistrationViewModel(smsOutcomeViewModel); _mockRegisterForSmsViewModelBuilder.Setup( s => s.MessageCaseDataCaptureApi <SubmitSMSRegistrationRequest, SMSSubmitRegistrationViewDeterminer>(AnySendSmsOutcomeViewModel(), AnyString())) .ReturnsAsync(returnedModel); var result = _sut.SubmitSMSRegistration(smsOutcomeViewModel); var model = (SendSmsOutcomeViewModel)((ViewResult)result.Result).Model; Assert.AreEqual("123456", model.Journey.Steps[0].AnswerInputValue); }
public async Task <SMSRegistrationViewModel> MessageCaseDataCaptureApi <TRequest, TViewDeterminer>(SendSmsOutcomeViewModel model, string endPoint) where TViewDeterminer : SMSViewDeterminerBase, new() { var request = Mapper.Map <TRequest>(model); var response = await SendRequestToDataCaptureApi <TRequest>(endPoint, request); var smsRegisrationModel = new SMSRegistrationViewModel(model); new TViewDeterminer().Build(smsRegisrationModel, response.StatusCode); return(smsRegisrationModel); }
public void BaseBuild(SMSRegistrationViewModel model, HttpStatusCode statusCode) { model.ViewName = SuccessView; if (statusCode != HttpStatusCode.OK) { model.ViewName = "Failure_SMS"; } if ((int)statusCode == 429) { model.ViewName = "Too_Many_Requests_SMS"; } }
public override void Build(SMSRegistrationViewModel model, HttpStatusCode statusCode) { base.BaseBuild(model, statusCode); }
public virtual void Build(SMSRegistrationViewModel model, HttpStatusCode statusCode) { BaseBuild(model, statusCode); }