예제 #1
0
        public void ImplementRuleYoungestDriver25()
        {
            //Assemble
            _policy.PolicyStartDate = new DateTime(2017, 03, 20);
            _policy.DriversOnPolicy.Add(_driver);
            _driver.DateOfBirth = new DateTime(1992, 03, 20);
            var youngestDriverRule = new YoungestDriverRule();

            //Act
            var expectedResult = _basePremium + _basePremium * 0.2m;
            var actualResult   = youngestDriverRule.ImplementRule(_policy, _basePremium);

            //Assert
            Assert.AreEqual(expectedResult, actualResult);
        }
예제 #2
0
        public void Initialise()
        {
            _basePremium = 500m;

            _policy = new Policy()
            {
                PolicyStartDate = new DateTime(),
                DriversOnPolicy = new ObservableCollection <Driver>()
            };

            _driver = new Driver()
            {
                ClaimsAssociatedToDriver = new ObservableCollection <Claim>(),
                DateOfBirth = new DateTime(),
                Occupation  = new Occupation()
            };

            _basePremiumRule      = new BasePremiumRule();
            _driverOccupationRule = new DriverOccupationRule();
            _youngestDriverRule   = new YoungestDriverRule();
        }
예제 #3
0
        public void ImplementRuleYoungestDriver75()
        {
            //Assemble
            Policy   policy            = _policy;
            Driver   driver            = _driver;
            DateTime startDate         = new DateTime(2017, 03, 20);
            DateTime driverDateOfBirth = new DateTime(1942, 03, 20);

            policy.PolicyStartDate = startDate;
            policy.DriversOnPolicy.Add(driver);
            driver.DateOfBirth = driverDateOfBirth;
            decimal            _basePremium       = 500;
            YoungestDriverRule youngestDriverRule = new YoungestDriverRule();

            //Act

            decimal expectedResult = _basePremium + _basePremium * 0.1m;
            decimal actualResult   = youngestDriverRule.ImplementRule(policy, _basePremium);

            //Assert
            Assert.AreEqual(expectedResult, actualResult);
        }