public void NightLifeTest_Methods() { Nightlife nightLife = new Nightlife(2000); TimeSpan StartHour = new TimeSpan(20, 0, 0); TimeSpan EndHour = new TimeSpan(27, 0, 0); int extraHours = 2; int extraHourPrice = 280; int CalculatedPrice = 2000; nightLife.SetTime(new TimeSpan(20, 0, 0), null); nightLife.EndHour.Should().Be(EndHour); var result = nightLife.GetCalculatedPrice(100); nightLife.GetEndTime(); result.Key.Should().Be(CalculatedPrice); result.Value.Any(s => s.Type == "Extra uren").Should().BeFalse(); nightLife.SetTime(new TimeSpan(20, 0, 0), 2); CalculatedPrice = 2280; EndHour = new TimeSpan(29, 0, 0); nightLife.EndHour.Should().Be(EndHour); result = nightLife.GetCalculatedPrice(100); nightLife.GetEndTime(); result.Key.Should().Be(CalculatedPrice); result.Value.Single(s => s.Type == "Extra uren").TotalPrice.Should().Be(extraHourPrice); result.Value.Single(s => s.Type == "Extra uren").NrOfHours.Should().Be(extraHours); }
public void NightLifeTest_Exceptions() { Nightlife nightLife = new Nightlife(2000); Action act = () => nightLife.GetCalculatedPrice(200); act.Should().Throw <DomainException>().WithMessage("Zorg er aub voor dat de start- en eindtijd ingevuld zijn"); act = () => nightLife.SetTime(new TimeSpan(20, 0, 0), -10); act.Should().Throw <DomainException>().WithMessage("Je kan geen negatief aantal extra uren hebben"); act = () => nightLife.SetTime(new TimeSpan(20, 0, 0), 10); act.Should().Throw <DomainException>().WithMessage("Zorg er a.u.b. voor dat het eind uur niet meer dan elf uur na het start uur is." + " (Het Nightlife arangement heeft een standaartduuratie van 4 uur)"); }