public void DeclinedPolicy() { var policy = new SingleTripPolicy(new Age(76), new Sex("Male"), new Destination("Worldwide"), new PeriodOfTravel(21), new Tax(0.05)); var premium = policy.CalculatePremium(); string result = new PremiumFormatter().Format(premium); Assert.Equal(@"DECLINE: Age", result); }
public void AnnualAge67FemaleWorldwide() { var policy = new AnnualPolicy(new Age(67), new Sex("Female"), new Destination("Worldwide"), new Tax(0.05)); var premium = policy.CalculatePremium(); string result = new PremiumFormatter().Format(premium); Assert.Equal( @"BasePremium (80.00): 80.00 Age (80.00): 160.00 Sex (-16.00): 144.00 Destination (57.60): 201.60 Tax (10.08): 211.68 Total Premium: 211.68", result); }
public void SingleTripAge20MaleUKFor10Days() { var policy = new SingleTripPolicy(new Age(20), new Sex("Male"), new Destination("UK"), new PeriodOfTravel(10), new Tax(0.05)); var premium = policy.CalculatePremium(); string result = new PremiumFormatter().Format(premium); Assert.Equal( @"BasePremium (20.00): 20.00 Age (0.00): 20.00 Sex (4.00): 24.00 Destination (-9.60): 14.40 PeriodOfTravel (-1.44): 12.96 Tax (0.65): 13.61 Total Premium: 13.60", result); }