Exemplo n.º 1
0
        /// <summary>
        /// Sets up a sample ticketed event and prints it to the console.
        /// </summary>
        public static void TestSetupTicketService()
        {
            Console.WriteLine("Creating a ticketed event");
            ticketedEvent = new TicketedEvent("Amazing-Concert-@-The-Showbox", new DateTime(2019, 9, 5, 4, 0, 0), 10, 15);
            Console.WriteLine('\n' + ticketedEvent.ToString() + '\n');
            Assert.AreEqual(ticketedEvent.NumberOfAvailableSeats, 150);
            Assert.AreEqual(ticketedEvent.NumberOfSeats, 150);
            Assert.AreEqual(ticketedEvent.NumberOfRows, 10);
            Assert.AreEqual(ticketedEvent.NumberOfColumns, 15);
            Assert.AreEqual(ticketedEvent.Name, "Amazing-Concert-@-The-Showbox");
            Assert.AreEqual(ticketedEvent.Time, new DateTime(2019, 9, 5, 4, 0, 0));
            Assert.AreEqual(ticketedEvent.Seats.Count, 150);
            Assert.IsNotNull(ticketedEvent.SeatHolds);
            Assert.IsNotNull(ticketedEvent.Reservations);
            Assert.AreEqual(ticketedEvent.SeatHoldsCreated, 0);

            Console.WriteLine("Ticketed Event successfully created.");

            Console.WriteLine("Binding Ticketed event to Controller");
            DataController.Instance.LoadTicketedEvent(ticketedEvent);
            Assert.IsTrue(DataController.Instance.Initialized());

            Console.WriteLine("Ticketed Event bound to data controller");

            Console.WriteLine("Creating Ticket Service.");
            ticketService = new MyTicketService();

            Console.WriteLine("Binding ticket service to ticketed event");
            ticketService.BindTicketServiceToEvent(ticketedEvent.Name);

            Console.WriteLine("Test no rebind of ticket service.");
            try
            {
                ticketService.BindTicketServiceToEvent("random-other-event");
                Assert.Fail("Ticket service was rebound, should not happen");
            }
            catch (InvalidOperationException e)
            {
                Assert.IsTrue(e.Message.Contains("The ticket service is already bound to an event"));
            }

            Console.WriteLine("Ticket Service Successfully setup.");
        }
Exemplo n.º 2
0
        /// <summary>
        /// Runs unit tests
        /// </summary>
        public static void RunTests( )
        {
            Console.WriteLine("===================== RUNNING UNIT TESTS =============================");
            ticketService = null;
            DataController.Instance.LoadTicketedEvent(null);
            ticketedEvent = null;

            TestSetupTicketService();
            TestNumSeatsAvailable();
            TestFindAndHoldSeats();
            TestReserveSeats();

            ticketService = null;
            DataController.Instance.LoadTicketedEvent(null);
            ticketedEvent = null;

            Console.WriteLine("===================== UNIT TESTS PASSED! =============================");

            Console.WriteLine("Running tests resets the ticket service. Use ts create to create another ticket service");
        }