public CommunalPayments Calculate(CommunalOutgoings outgoings) { var tariffs = _communalSettings.CommunalTariffs; var electricalPayment = tariffs.ElectricalSupplyInRublesPerKilowatt * outgoings.ElectricalOutgoings; var couldWaterPayment = tariffs.CouldWaterSupplyInRublesPerCubicMeters * outgoings.CouldWaterOutgoings; var hotWaterPayment = tariffs.HotWaterSupplyInRublesPerCubicMeters * outgoings.HotWaterOutgoings; return(new CommunalPayments(electricalPayment, couldWaterPayment, hotWaterPayment)); }
public void CalculateTest() { var communalSettings = Substitute.For <ICommunalSettings>(); communalSettings.CommunalTariffs.Returns(new CommunalTariffs(2.49, 17.16, 100.10)); var calculator = new CommunalCalculator(communalSettings); var outgoings = new CommunalOutgoings(107, 2, 2); var payments = calculator.Calculate(outgoings); var expected = new CommunalPayments(266.43, 34.32, 200.2); var actual = payments; Assert.AreEqual(expected, actual); }