public void ProduceOfferReturnsCorrectResult(
int initialRate,
string term)
{
var application = new MortgageApplication();
var offer = new AdjustableRateAnnuityOffer
{
InitialRate = initialRate,
Term = DateTimeOffset.Parse(term)
};
var sut = new AdjustableRateAnnuityOfferMortgageApplicationProcessor
{
OfferService = new Mock<IOfferService>().Object
};
Mock.Get(sut.OfferService)
.Setup(o => o.GetAdjustableRateAnnuityOffer(application))
.Returns(offer);
var actual = sut.ProduceOffer(application);
var expected = new IRendering[]
{
new Heading2Rendering("Adjustable rate offer"),
new BoldRendering("Initial interest rate:"),
new TextRendering(" " + offer.InitialRate / 10m + " %"),
new LineBreakRendering(),
new BoldRendering("Term:"),
new TextRendering(" " + offer.Term.ToString("D")),
new LineBreakRendering()
};
Assert.Equal(expected, actual);
}