Esempio n. 1
0
        public static void Main()
        {
            var reservationInformation = Console.ReadLine();
            var reservationParser      = new ReservationParser();
            var reservation            = reservationParser.Parse(reservationInformation);
            var priceCalculator        = new PriceCalculator();
            var holidayCost            = priceCalculator.CalculatePrice(reservation);

            Console.WriteLine($"{holidayCost:F2}");
        }
Esempio n. 2
0
        /// <summary>
        /// Test dzia³ania dla przypadku, gdy jest iloœæ widzów, ale nie ma
        /// ceny od osoby. Cena od osoby powinna byæ ustawiona na wartoœæ
        /// gwarantuj¹c¹ minimalny przychód.
        /// </summary>
        public void TestNoDollar()
        {
            String s =
                "Date, November 5, Headcount, 250, City, Springfield, "
                + "  HasSite, false";
            ForgivingBuilder  b = new ForgivingBuilder();
            ReservationParser p = new ReservationParser(b);

            p.Parse(s);
            Reservation r = b.Build();
            //
            DateTime d = new DateTime(2000, 11, 5);

            d = ReservationBuilder.Futurize(d);
            //
            Assertion.AssertEquals(d, r.Date);
            Assertion.AssertEquals(250, r.Headcount);
            Assertion.Assert(r.Headcount * r.DollarsPerHead >= ReservationBuilder.MINTOTAL);
            Assertion.AssertEquals("Springfield", r.City);
            Assertion.AssertEquals(false, r.HasSite);
        }
Esempio n. 3
0
        public void TestNormal()
        {
            String s =
                "Date, November 5, Headcount, 250, City, Springfield, "
                + "DollarsPerHead, 9.95, HasSite, false";
            UnforgivingBuilder b = new UnforgivingBuilder();
            ReservationParser  p = new ReservationParser(b);

            p.Parse(s);
            Reservation r = b.Build();
            //
            DateTime d = new DateTime(2000, 11, 5);

            d = ReservationBuilder.Futurize(d);
            //
            Assert.AreEqual(d, r.Date);
            Assert.AreEqual(250, r.Headcount);
            Assert.AreEqual("Springfield", r.City);
            Assert.AreEqual(9.95, (double)r.DollarsPerHead, .01);
            Assert.AreEqual(false, r.HasSite);
        }
Esempio n. 4
0
        public void TestNoHeadcountNoDollar()
        {
            String s =
                "Date, November 5,   City, Springfield, "
                + "  HasSite, false";
            ForgivingBuilder  b = new ForgivingBuilder();
            ReservationParser p = new ReservationParser(b);

            p.Parse(s);
            Reservation r = b.Build();
            //
            DateTime d = new DateTime(2000, 11, 5);

            d = ReservationBuilder.Futurize(d);
            //
            Assert.AreEqual(d, r.Date);
            Assert.AreEqual(ReservationBuilder.MINHEAD, r.Headcount);
            Assert.AreEqual("Springfield", r.City);
            Assert.AreEqual((double)(ReservationBuilder.MINTOTAL / r.Headcount), (double)r.DollarsPerHead, .01);
            Assert.AreEqual(false, r.HasSite);
        }
Esempio n. 5
0
        public void Test1()
        {
            ReservationParser reservationParser = new ReservationParser(content);

            ConEx.Log(reservationParser.PrincipalPlayer);
            ConEx.Log(reservationParser.Reservation);
            ConEx.Log(reservationParser.Location);
            ConEx.Log(reservationParser.ActivityDateStart);
            ConEx.Log(reservationParser.ActivityDateEnd);

            Assert.AreEqual("*****@*****.**", reservationParser.PrincipalPlayer);
            Assert.AreEqual("2627792", reservationParser.Reservation);
            Assert.AreEqual(" Lafayette Tennis Court #2", reservationParser.Location);
            //int year, int month, int day, int hour, int minute, int second
            DateTime start = new DateTime(2021, 8, 29, 9, 0, 0);

            Assert.AreEqual(start, reservationParser.ActivityDateStart);
            DateTime end = new DateTime(2021, 8, 29, 10, 30, 0);

            Assert.AreEqual(end, reservationParser.ActivityDateEnd);
            //
        }