コード例 #1
0
        public void CalculateSingleShouldFail()
        {
            // Arrange
            _mockValidator.Setup(x => x.Validate(HardcodedConsumption)).Throws(new ArgumentException());
            _tariff = new PackagedTariff(new TariffValidator());

            // Act
            var result = _tariff.Calculate(new double[] { 0 });

            // Assert - Expects Exception
        }
コード例 #2
0
        public void Compare(double consumption)
        {
            var firstComparableProcduect = _fistComparer.Calculate(consumption);

            Display(firstComparableProcduect);

            var secondComparableProcduect = _secondTComparer.Calculate(consumption);

            Display(secondComparableProcduect);

            Console.WriteLine(new String('*', 50));
        }
コード例 #3
0
        public void CalculateSingleShouldSuccess()
        {
            // Arrange
            _mockValidator.Setup(x => x.Validate(HardcodedConsumption));
            _tariff = new PackagedTariff(_mockValidator.Object);

            // Act
            var result = _tariff.Calculate(HardcodedConsumption);

            // Assert
            _mockValidator.Verify(x => x.Validate(It.Is <double>(i => i == HardcodedConsumption)), Times.Once);
            Assert.AreEqual(result.Consumption, HardcodedConsumption);
            Assert.AreEqual(result.TariffType, TariffType.PackagedTariff);
            Assert.AreEqual(result.AnnualCost, 800);
        }
コード例 #4
0
        public void CalculateShouldSuccess()
        {
            // Arrange
            _mockValidator.Setup(x => x.Validate(4500));
            _tariff = new PackagedTariff(_mockValidator.Object);

            // Act
            var result = _tariff.Calculate(new double[] { 4500 });

            // Assert
            _mockValidator.Verify(x => x.Validate(It.Is <double>(i => i == 4500)), Times.Once);
            Assert.IsNotNull(result);
            Assert.AreEqual(result.Count(), 1);

            var first = result.First();

            Assert.AreEqual(first.Consumption, 4500);
            Assert.AreEqual(first.TariffType, TariffType.PackagedTariff);
            Assert.AreEqual(first.AnnualCost, 800 + (500 * 0.3M));
        }
コード例 #5
0
        public void CalculateShouldSuccess()
        {
            // Arrange
            _mockValidator.Setup(x => x.Validate(HardcodedConsumption));
            _tariff = new BasicTariff(_mockValidator.Object);

            // Act
            var result = _tariff.Calculate(new double[] { HardcodedConsumption });

            // Assert
            _mockValidator.Verify(x => x.Validate(It.Is <double>(i => i == HardcodedConsumption)), Times.Once);
            Assert.IsNotNull(result);
            Assert.AreEqual(result.Count(), 1);

            var first = result.First();

            Assert.AreEqual(first.Consumption, HardcodedConsumption);
            Assert.AreEqual(first.TariffType, TariffType.BasicTariff);
            Assert.AreEqual(first.AnnualCost, (5 * 12) + (0.22M * (decimal)HardcodedConsumption));
        }