private async Task <Loan> CreateLoan(CreateLoanCommand request) { var rate = await rateRepository.FindById(request.RateId); var fee = await feeRepository.FindById(request.FeeId); var loan = Loan.Create(request.Amount, request.Duration, Status.Draft, rate, fee); return(loan); }
public async Task Handle_SetExistingRate_ReturnRateInformation() { //Arrange var guid = rateFake.Id; FindByIdRatesQuery query = new FindByIdRatesQuery(guid); IRateRepository rateRepository = A.Fake <IRateRepository>(); FindByIdRatesQueryHandler handler = new FindByIdRatesQueryHandler(rateRepository); A.CallTo(() => rateRepository.FindById(guid)).Returns(Task.FromResult(this.rateFake)); //Act var result = await handler.Handle(query, CancellationToken.None); //Assert Assert.True(result != null); Assert.True(result.Id == query.Id); Assert.Equal(result.AnnualInterestRate, this.rateFake.AnnualInterestRate); }