Пример #1
0
        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));
        }
Пример #2
0
        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);
        }