Esempio n. 1
0
        public void WeddingTest_Methods()
        {
            Wedding  wedding         = new Wedding(2000);
            TimeSpan StartHour       = new TimeSpan(7, 0, 0);
            TimeSpan EndHour         = new TimeSpan(14, 0, 0);
            int      extraHours      = 2;
            int      extraHourPrice  = 130;
            int      CalculatedPrice = 2000;

            wedding.SetTime(new TimeSpan(7, 0, 0), null);
            wedding.EndHour.Should().Be(EndHour);
            var result = wedding.GetCalculatedPrice(100);

            result.Key.Should().Be(CalculatedPrice);
            result.Value.Any(s => s.Type == "Extra uren").Should().BeFalse();


            wedding.SetTime(new TimeSpan(7, 0, 0), 2);
            CalculatedPrice = 2130;
            EndHour         = new TimeSpan(16, 0, 0);
            wedding.EndHour.Should().Be(EndHour);
            result = wedding.GetCalculatedPrice(100);
            wedding.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);
        }
Esempio n. 2
0
        public void WeddingTest_Exceptions()
        {
            Wedding wedding = new Wedding(1000);
            Action  act     = () => wedding.GetCalculatedPrice(200);

            act.Should().Throw <DomainException>().WithMessage("Zorg er aub voor dat de start- en eindtijd ingevuld zijn");

            act = () => wedding.SetTime(new TimeSpan(7, 0, 0), -10);
            act.Should().Throw <DomainException>().WithMessage("Je kan geen negatief aantal extra uren hebben");

            act = () => wedding.SetTime(new TimeSpan(7, 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 Wedding arangement heeft een standaartduuratie van 8 uur)");
        }