public void Cancel_Ticket() { Execute_Test(() => { Flight flight = customer_facade.GetFlightById(1); Ticket ticket = customer_facade.PurchaseTicket(customer_token, flight); Assert.AreEqual(ticket.Id, 2); flight = customer_facade.GetFlightById(1); int empty_seates_before_cancellation = flight.RemainingTickets; customer_facade.CancelTicket(customer_token, ticket); Ticket ticket_from_db = customer_facade.GetTicketById(customer_token, ticket.Id); Assert.AreEqual(ticket_from_db, null); flight = customer_facade.GetFlightById(1); int empty_seates_after_cancellation = flight.RemainingTickets; Assert.AreEqual(empty_seates_before_cancellation + 1, empty_seates_after_cancellation); TicketHistory ticketHistory = customer_facade.GetTicketHistoryByOriginalId(customer_token, ticket.Id); Assert.AreEqual(ticketHistory.Id, 1); Assert.AreEqual(ticketHistory.FlightId, ticket.Flight.Id); Assert.AreEqual(ticketHistory.CustomerId, ticket.Customer.Id); Assert.AreEqual(ticketHistory.CustomerFullName, ticket.Customer.FirstName + " " + ticket.Customer.LastName); Assert.AreEqual(ticketHistory.CustomerUserName, ticket.Customer.User.UserName); Assert.AreEqual(ticketHistory.TicketStatus, TicketStatus.Cancelled_By_Customer); }); }
public void Remove_Customer_With_Ticket() { Execute_Test(() => { int country_id = administrator_facade.CreateNewCountry(administrator_token, TestData.Get_Countries_Data()[0]); int country_id2 = administrator_facade.CreateNewCountry(administrator_token, TestData.Get_Countries_Data()[1]); int country_id3 = administrator_facade.CreateNewCountry(administrator_token, TestData.Get_Countries_Data()[2]); AirlineCompany demi_airlineCompany = TestData.Get_AirlineCompanies_Data()[0]; demi_airlineCompany.CountryId = country_id; long airline_company_id = administrator_facade.CreateNewAirlineCompany(administrator_token, demi_airlineCompany); demi_airlineCompany.Id = airline_company_id; system.TryLogin(demi_airlineCompany.User.UserName, demi_airlineCompany.User.Password, out ILoginToken token, out FacadeBase facade); LoggedInAirlineFacade airline_facade = facade as LoggedInAirlineFacade; LoginToken <AirlineCompany> airline_token = token as LoginToken <AirlineCompany>; Flight demi_flight = TestData.Get_Flights_Data()[0]; long flight_id = airline_facade.CreateFlight(airline_token, demi_flight); demi_flight.Id = flight_id; Customer demi_customer = TestData.Get_Customers_Data()[0]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); demi_customer.Id = customer_id; system.TryLogin(demi_customer.User.UserName, demi_customer.User.Password, out ILoginToken token2, out FacadeBase facade2); LoggedInCustomerFacade customer_facade = facade2 as LoggedInCustomerFacade; LoginToken <Customer> customer_token = token2 as LoginToken <Customer>; Ticket ticket = customer_facade.PurchaseTicket(customer_token, demi_flight); Assert.AreEqual(customer_facade.GetAllMyTickets(customer_token).Count, 1); administrator_facade.RemoveCustomer(administrator_token, demi_customer); Assert.AreEqual(administrator_facade.GetAllCustomers(administrator_token).Count, 0); Assert.AreEqual(customer_facade.GetAllMyTickets(customer_token).Count, 0); Assert.AreEqual(customer_facade.GetTicketHistoryByOriginalId(customer_token, ticket.Id).Id, 1); }); }