public void WhenIMakeThePayment() { var request = ScenarioContext.Current["Request"] as MakePaymentRequest; var accountDebtor = ScenarioContext.Current["DebtorAccount"] as Account; var accountCreditor = ScenarioContext.Current["DebtorAccount"] as Account; accountCreditor.AccountNumber = request.CreditorAccountNumber; uow.When(() => request.DebtorAccountNumber != null).Setup(s => s.AccountDataStore.GetAccount(request.DebtorAccountNumber)) .Returns(accountDebtor); uow.When(() => request.CreditorAccountNumber != null).Setup(s => s.AccountDataStore.GetAccount(request.CreditorAccountNumber)) .Returns(accountCreditor); var paymentScheme = new PaymentFactory(); var paymentRequestValidator = new MakePaymentRequestValidator(uow.Object); var paymentService = new PaymentService(uow.Object, paymentScheme, paymentRequestValidator); var result = paymentService.MakePayment(request); ScenarioContext.Current["Result"] = result; }
public void WhenICallTheMakePaymentRequestValidation() { Mock <IUnitOfWork> uow = new Mock <IUnitOfWork>(); var request = ScenarioContext.Current["Request"] as MakePaymentRequest; uow.When(() => request.DebtorAccountNumber != "").Setup(s => s.AccountDataStore.GetAccount(request.DebtorAccountNumber)) .Returns(new Account() { AccountNumber = request.DebtorAccountNumber }); uow.When(() => request.CreditorAccountNumber != "").Setup(s => s.AccountDataStore.GetAccount(request.CreditorAccountNumber)) .Returns(new Account() { AccountNumber = request.CreditorAccountNumber }); uow.When(() => request.CreditorAccountNumber == "").Setup(s => s.AccountDataStore.GetAccount(request.CreditorAccountNumber)) .Returns(new Account()); var validator = new MakePaymentRequestValidator(uow.Object); ScenarioContext.Current["Result"] = validator.IsValid(request); }
public void SetUp() { _validator = new MakePaymentRequestValidator(); }