public void Remove_Customer_Using_Level_One_Admin_Should_Throw_NotAllowedAdminActionException() { Init_Admin_Level_One_And_Login(); Execute_Test(() => { Customer demi_customer = TestData.Get_Customers_Data()[0]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); demi_customer.Id = customer_id; Assert.ThrowsException <NotAllowedAdminActionException>(() => administrator_level_one_facade.RemoveCustomer(administrator_level_one_token, demi_customer)); }); }
public void Create_And_Get_New_Customer() { Execute_Test(() => { Customer demi_customer = TestData.Get_Customers_Data()[0]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); Assert.AreEqual(customer_id, 1); demi_customer.Id = customer_id; Customer customer_from_db = administrator_facade.GetCustomerById(administrator_token, customer_id); TestData.CompareProps(customer_from_db, demi_customer); }); }
public void Remove_Customer() { Execute_Test(() => { Customer demi_customer = TestData.Get_Customers_Data()[0]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); demi_customer.Id = customer_id; administrator_facade.RemoveCustomer(administrator_token, demi_customer); Assert.AreEqual(administrator_facade.GetAllCustomers(administrator_token).Count, 0); }); }
public void Create_Two_Customers_With_Same_Phone_Number() { Execute_Test(() => { Customer demi_customer = TestData.Get_Customers_Data()[0]; Customer demi_customer_with_same_phone_number = TestData.Get_Customers_Data()[3]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); Assert.AreEqual(customer_id, 1); Assert.AreEqual(demi_customer.User.Id, 1); Assert.ThrowsException <RecordAlreadyExistsException>(() => administrator_facade.CreateNewCustomer(administrator_token, demi_customer_with_same_phone_number)); }); }
private void Init_Anonymous_Data() { _logger.Debug($"Start Init Anonymous Tests Data"); TestsDAOPGSQL.ClearDB(); string username = "******"; string password = "******"; system.TryLogin(username, password, out ILoginToken admin_token, out FacadeBase admin_facade); LoggedInAdministratorFacade loggedInAdministratorFacade = admin_facade as LoggedInAdministratorFacade; LoginToken <Administrator> adminLoginToken = admin_token as LoginToken <Administrator>; int country_id = loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[0]); loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[1]); loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[2]); loggedInAdministratorFacade.CreateNewCustomer(adminLoginToken, TestData.Get_Customers_Data()[0]); AirlineCompany airlineCompany = TestData.Get_AirlineCompanies_Data()[0]; airlineCompany.CountryId = country_id; loggedInAdministratorFacade.CreateNewAirlineCompany(adminLoginToken, airlineCompany); system.TryLogin(TestData.Get_AirlineCompanies_Data()[0].User.UserName, TestData.Get_AirlineCompanies_Data()[0].User.Password, out ILoginToken token, out FacadeBase facade); LoginToken <AirlineCompany> airline_token = token as LoginToken <AirlineCompany>; LoggedInAirlineFacade airline_facade = facade as LoggedInAirlineFacade; Flight flight = TestData.Get_Flights_Data_For_Anonymous_Tests()[0]; Flight flight2 = TestData.Get_Flights_Data_For_Anonymous_Tests()[1]; Flight flight3 = TestData.Get_Flights_Data_For_Anonymous_Tests()[2]; Flight flight4 = TestData.Get_Flights_Data_For_Anonymous_Tests()[3]; Flight flight5 = TestData.Get_Flights_Data_For_Anonymous_Tests()[4]; Flight flight6 = TestData.Get_Flights_Data_For_Anonymous_Tests()[5]; long flight_id = airline_facade.CreateFlight(airline_token, flight); long flight_id2 = airline_facade.CreateFlight(airline_token, flight2); long flight_id3 = airline_facade.CreateFlight(airline_token, flight3); long flight_id4 = airline_facade.CreateFlight(airline_token, flight4); long flight_id5 = airline_facade.CreateFlight(airline_token, flight5); long flight_id6 = airline_facade.CreateFlight(airline_token, flight6); flight.Id = flight_id; flight2.Id = flight_id2; flight3.Id = flight_id3; flight4.Id = flight_id4; flight5.Id = flight_id5; flight6.Id = flight_id6; _logger.Debug($"End Init Anonymous Tests Data"); }
private void Init_Customer_Facade_Data() { _logger.Debug($"Start Init Customer Tests Data"); string username = "******"; string password = "******"; system.TryLogin(username, password, out ILoginToken admin_token, out FacadeBase admin_facade); LoggedInAdministratorFacade loggedInAdministratorFacade = admin_facade as LoggedInAdministratorFacade; LoginToken <Administrator> adminLoginToken = admin_token as LoginToken <Administrator>; int country_id = loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[0]); loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[1]); loggedInAdministratorFacade.CreateNewCountry(adminLoginToken, TestData.Get_Countries_Data()[2]); loggedInAdministratorFacade.CreateNewCustomer(adminLoginToken, TestData.Get_Customers_Data()[0]); loggedInAdministratorFacade.CreateNewCustomer(adminLoginToken, TestData.Get_Customers_Data()[1]); AirlineCompany airlineCompany = TestData.Get_AirlineCompanies_Data()[0]; airlineCompany.CountryId = country_id; loggedInAdministratorFacade.CreateNewAirlineCompany(adminLoginToken, airlineCompany); system.TryLogin(airlineCompany.User.UserName, airlineCompany.User.Password, out ILoginToken airline_token, out FacadeBase airline_facade); LoggedInAirlineFacade loggedInAirlineFacade = airline_facade as LoggedInAirlineFacade; LoginToken <AirlineCompany> airlineLoginToken = airline_token as LoginToken <AirlineCompany>; Flight flight = TestData.Get_Flights_Data()[3]; Flight flight2 = TestData.Get_Flights_Data()[4]; Flight flight3 = TestData.Get_Flights_Data()[5]; long flight_id = loggedInAirlineFacade.CreateFlight(airlineLoginToken, flight); long flight_id2 = loggedInAirlineFacade.CreateFlight(airlineLoginToken, flight2); long flight_id3 = loggedInAirlineFacade.CreateFlight(airlineLoginToken, flight3); flight.Id = flight_id; flight2.Id = flight_id2; flight3.Id = flight_id3; system.TryLogin(TestData.Get_Customers_Data()[1].User.UserName, TestData.Get_Customers_Data()[1].User.Password, out ILoginToken token, out FacadeBase facade); LoginToken <Customer> cust_token = token as LoginToken <Customer>; LoggedInCustomerFacade cust_facade = facade as LoggedInCustomerFacade; cust_facade.PurchaseTicket(cust_token, flight); Login(TestData.Get_Customers_Data()[0].User.UserName, TestData.Get_Customers_Data()[0].User.Password); _logger.Debug($"End Init Customer Tests Data"); }
public void Update_Customer() { Execute_Test(() => { Customer demi_customer = TestData.Get_Customers_Data()[0]; long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customer); demi_customer.Id = customer_id; demi_customer.FirstName = "Changed"; demi_customer.LastName = "Name"; demi_customer.Address = "Changed Address"; demi_customer.CreditCardNumber = "11111111111111111111111"; demi_customer.PhoneNumber = "11111111111"; administrator_facade.UpdateCustomerDetails(administrator_token, demi_customer); Customer updated_customer = administrator_facade.GetCustomerById(administrator_token, customer_id); TestData.CompareProps(demi_customer, updated_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); }); }
public void Create_And_Get_List_Of_New_Customers() { Execute_Test(() => { Customer[] data = TestData.Get_Customers_Data(); Customer[] demi_customers = { data[0], data[1], data[2] }; for (int i = 0; i < demi_customers.Length; i++) { long customer_id = administrator_facade.CreateNewCustomer(administrator_token, demi_customers[i]); Assert.AreEqual(customer_id, i + 1); Assert.AreEqual(demi_customers[i].User.Id, i + 1); demi_customers[i].Id = customer_id; } IList <Customer> customers_from_db = administrator_facade.GetAllCustomers(administrator_token); Assert.AreEqual(demi_customers.Length, customers_from_db.Count); for (int i = 0; i < customers_from_db.Count; i++) { TestData.CompareProps(customers_from_db[i], demi_customers[i]); } }); }