Exemple #1
0
        public void GivenCustomerWhenCustomerIsNullThenReturnNull()
        {
            // Arrange
            var      mockPremiumCalculator    = new Mock <IPremiumCalculator>();
            Customer mockCustomer             = null;
            var      premiumCalculatorBuilder = new PremiumCalculatorBuilder(mockPremiumCalculator.Object);

            // Act
            premiumCalculatorBuilder.SetCustomer(mockCustomer);

            // Assert
            Assert.IsNull(mockCustomer);
        }
Exemple #2
0
        public void GivenCustomerWhenCustomerIsPresentThenSetCustomerData()
        {
            // Arrange
            var mockPremiumCalculator    = new Mock <IPremiumCalculator>();
            var mockCustomer             = this.GetCustomerMock();
            var premiumCalculatorBuilder = new PremiumCalculatorBuilder(mockPremiumCalculator.Object);

            // Act
            premiumCalculatorBuilder.SetCustomer(mockCustomer);

            // Assert
            Assert.AreEqual(50, mockCustomer.AnnualPremium);
        }
Exemple #3
0
        public void GivenCustomerWhenCustomerIsPresentThenReturnAverageMonthlyPremium()
        {
            // Arrange
            var mockPremiumCalculator = new Mock <IPremiumCalculator>();

            mockPremiumCalculator.Setup(c => c.CalculateAverageMonthlyPremium(It.IsAny <decimal>(), It.IsAny <int>())).Returns(4.375M);
            var mockCustomer             = this.GetCustomerMock();
            var premiumCalculatorBuilder = new PremiumCalculatorBuilder(mockPremiumCalculator.Object);

            premiumCalculatorBuilder.SetCustomer(mockCustomer);

            // Act
            premiumCalculatorBuilder.CalculateAverageMonthlyPremium();

            // Assert
            mockPremiumCalculator.Verify(c => c.CalculateAverageMonthlyPremium(It.IsAny <decimal>(), It.IsAny <int>()), Times.Once);
            Assert.AreEqual(4.375M, mockCustomer.AverageMonthlyPremium);
        }
Exemple #4
0
        public void GivenCustomerWhenCustomerIsPresentThenReturnCreditCharge()
        {
            // Arrange
            var mockPremiumCalculator = new Mock <IPremiumCalculator>();

            mockPremiumCalculator.Setup(c => c.CalculateCreditCharge(It.IsAny <decimal>())).Returns(2.5M);
            var mockCustomer             = this.GetCustomerMock();
            var premiumCalculatorBuilder = new PremiumCalculatorBuilder(mockPremiumCalculator.Object);

            premiumCalculatorBuilder.SetCustomer(mockCustomer);

            // Act
            premiumCalculatorBuilder.CalculateCreditCharge();

            // Assert
            mockPremiumCalculator.Verify(c => c.CalculateCreditCharge(It.IsAny <decimal>()), Times.Once);
            Assert.AreEqual(2.5M, mockCustomer.CreditCharge);
        }