public IHttpActionResult RemoveFlight([FromUri] long flightId)
        {
            IHttpActionResult res    = null;
            Flight            flight = null;

            GetLoginToken();
            if (airlineCompanyLoginToken == null)
            {
                return(Unauthorized());
            }
            FCS = FlyingCenterSystem.GetFlyingCenterSystemInstance();
            ILoggedInAirlineFacade airlineCompanyFacade = FCS.GetFacade(airlineCompanyLoginToken) as ILoggedInAirlineFacade;

            try
            {
                flight = airlineCompanyFacade.GetFlightByFlightId(airlineCompanyLoginToken, flightId);
                if (flight != null)
                {
                    airlineCompanyFacade.CancelFlight(airlineCompanyLoginToken, flight);
                    res = Ok($"Flight with ID = {flightId} not found");
                }
            }
            catch (Exception e1)
            {
                res = BadRequest("Flight hasn't been deleted " + e1.Message);
            }
            return(res);
        }
Esempio n. 2
0
        public void AirlineFacadeGetAllTicketsMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline2);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer1);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer2);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer3);

            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);
            Flight flight2 = new Flight(0, 0, TestData.chadID, TestData.denmarkID, TestData.futureDate1, TestData.futureDate3, 200);
            Flight flight3 = new Flight(0, 0, TestData.egyptID, TestData.franceID, TestData.futureDate2, TestData.futureDate3, 200);
            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);
            ILoggedInAirlineFacade airlineFacade2 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline2.UserName, TestData.airline2.Password, out ILoginToken airlineToken2);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);
            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight2);
            airlineFacade2.CreateFlight((LoginToken <AirlineCompany>)airlineToken2, flight3);

            ILoggedInCustomerFacade customerFacade1 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer1.UserName, TestData.customer1.Password, out ILoginToken customerToken1);
            ILoggedInCustomerFacade customerFacade2 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer2.UserName, TestData.customer2.Password, out ILoginToken customerToken2);
            ILoggedInCustomerFacade customerFacade3 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer3.UserName, TestData.customer3.Password, out ILoginToken customerToken3);
            Ticket ticket1 = customerFacade1.PurchaseTicket((LoginToken <Customer>)customerToken1, flight1);
            Ticket ticket2 = customerFacade2.PurchaseTicket((LoginToken <Customer>)customerToken2, flight2);
            Ticket ticket3 = customerFacade3.PurchaseTicket((LoginToken <Customer>)customerToken3, flight3);

            IList <Ticket> tickets1 = airlineFacade1.GetAllTickets((LoginToken <AirlineCompany>)airlineToken1);

            Assert.AreEqual(ticket1, tickets1[0]);
            Assert.AreEqual(ticket2, tickets1[1]);
            Assert.AreEqual(2, tickets1.Count);
        }
        public void AirlineCompanyFacadeFacade_GetAllTickets_TicketsReceived()
        {
            Ticket         newTicket = null;
            IList <Ticket> tickets1  = null;
            IList <Ticket> tickets2  = null;

            InitDBUnitTest.InitDB();
            AdministratorFacade_CreateNewCustomer();
            Flight flight1 = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade  airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);
            ILoggedInCustomerFacade customerFacade       = GetCustomerFacade(out LoginToken <Customer> tCustomer);
            Ticket ticket = customerFacade.PurchaseTicket(tCustomer, flight1);

            tickets1              = airlineCompanyFacade.GetAllTickets(tAirlineCompany);
            newTicket             = CreateNewTicket();
            newTicket.ID          = ticket.ID;
            newTicket.FLIGHT_ID   = ticket.FLIGHT_ID;
            newTicket.CUSTOMER_ID = ticket.CUSTOMER_ID;
            tickets2              = new List <Ticket>();
            tickets2.Add(newTicket);
            List <Ticket> t1 = (List <Ticket>)tickets1;
            List <Ticket> t2 = (List <Ticket>)tickets2;

            Assert.AreNotEqual(tickets1, null);
            Assert.AreNotEqual(tickets2, null);
            CollectionAssert.AreEqual(t1, t2);
            Assert.AreEqual(tickets1[0].ID, tickets2[0].ID);
            Assert.AreEqual(tickets1[0].FLIGHT_ID, tickets2[0].FLIGHT_ID);
            Assert.AreEqual(tickets1[0].CUSTOMER_ID, tickets2[0].CUSTOMER_ID);
        }
        public void AirlineCompanyFacadeFacade_UpdateFlight_FlightUpdated()
        {
            Flight updatedFlight = null;

            InitDBUnitTest.InitDB();
            Flight flight1 = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);

            updatedFlight    = new Flight();
            updatedFlight.ID = flight1.ID;
            updatedFlight.AIRLINECOMPANY_ID        = flight1.AIRLINECOMPANY_ID;
            updatedFlight.ORIGIN_COUNTRY_CODE      = flight1.ORIGIN_COUNTRY_CODE;
            updatedFlight.DESTINATION_COUNTRY_CODE = flight1.DESTINATION_COUNTRY_CODE;
            updatedFlight.DEPARTURE_TIME           = TestResource.AirlineCompanyFacade_UpdateFlightDetail_DEPARTURE_TIME;
            updatedFlight.LANDING_TIME             = TestResource.AirlineCompanyFacade_UpdateFlightDetail_LANDING_TIME;
            updatedFlight.REMANING_TICKETS         = TestResource.AirlineCompanyFacade_UpdateFlightDetail_REMANING_TICKETS;
            updatedFlight.TOTAL_TICKETS            = TestResource.AirlineCompanyFacade_UpdateFlightDetail_TOTAL_TICKETS;
            airlineCompanyFacade.UpdateFlight(tAirlineCompany, updatedFlight);
            Flight f = airlineCompanyFacade.GetFlightByFlightId(tAirlineCompany, updatedFlight.ID);

            Assert.AreNotEqual(null, f);
            Assert.AreEqual(updatedFlight.ID, f.ID);
            Assert.AreEqual(updatedFlight.AIRLINECOMPANY_ID, f.AIRLINECOMPANY_ID);
            Assert.AreEqual(updatedFlight.ORIGIN_COUNTRY_CODE, f.ORIGIN_COUNTRY_CODE);
            Assert.AreEqual(updatedFlight.DESTINATION_COUNTRY_CODE, f.DESTINATION_COUNTRY_CODE);
            Assert.AreEqual(updatedFlight.LANDING_TIME, f.LANDING_TIME);
            Assert.AreEqual(updatedFlight.DEPARTURE_TIME, f.DEPARTURE_TIME);
            Assert.AreEqual(updatedFlight.REMANING_TICKETS, f.REMANING_TICKETS);
            Assert.AreEqual(updatedFlight.TOTAL_TICKETS, f.TOTAL_TICKETS);
        }
        public void CustomerFacadeGetAllMyFlightsMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer1);

            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);
            Flight flight2 = new Flight(0, 0, TestData.chadID, TestData.denmarkID, TestData.futureDate1, TestData.futureDate3, 190);
            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);
            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight2);

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("", "", out ILoginToken anonymousToken);

            ILoggedInCustomerFacade customerFacade1 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer1.UserName, TestData.customer1.Password, out ILoginToken customerToken1);

            Assert.AreEqual(0, customerFacade1.GetAllMyFlights((LoginToken <Customer>)customerToken1).Count);

            Ticket ticket1 = customerFacade1.PurchaseTicket((LoginToken <Customer>)customerToken1, flight1);
            Ticket ticket2 = customerFacade1.PurchaseTicket((LoginToken <Customer>)customerToken1, flight2);

            IList <Flight> actualflights = customerFacade1.GetAllMyFlights((LoginToken <Customer>)customerToken1);

            Assert.AreEqual(2, customerFacade1.GetAllMyFlights((LoginToken <Customer>)customerToken1).Count);
            Assert.AreEqual(flight1, actualflights[0]);
            Assert.AreEqual(flight2, actualflights[1]);
        }
        public void AirlineCompanyFacadeFacade_GetAllFlights_FlightsReceived()
        {
            IList <Flight> flights1  = null;
            IList <Flight> flights2  = null;
            Flight         newFlight = null;

            InitDBUnitTest.InitDB();
            Flight flight = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);

            flights1     = airlineCompanyFacade.GetAllFlights(tAirlineCompany);
            newFlight    = CreateNewFlight1();
            newFlight.ID = flight.ID;
            newFlight.AIRLINECOMPANY_ID        = flight.AIRLINECOMPANY_ID;
            newFlight.ORIGIN_COUNTRY_CODE      = flight.ORIGIN_COUNTRY_CODE;
            newFlight.DESTINATION_COUNTRY_CODE = flight.DESTINATION_COUNTRY_CODE;
            flights2 = new List <Flight>();
            flights2.Add(newFlight);
            List <Flight> f1 = (List <Flight>)flights1;
            List <Flight> f2 = (List <Flight>)flights2;

            Assert.AreNotEqual(null, flights1);
            Assert.AreNotEqual(null, flights2);
            CollectionAssert.AreEqual(f1, f2);
            Assert.AreEqual(flights1[0].ID, flights2[0].ID);
            Assert.AreEqual(flights1[0].AIRLINECOMPANY_ID, flights2[0].AIRLINECOMPANY_ID);
            Assert.AreEqual(flights1[0].ORIGIN_COUNTRY_CODE, flights2[0].ORIGIN_COUNTRY_CODE);
            Assert.AreEqual(flights1[0].DESTINATION_COUNTRY_CODE, flights2[0].DESTINATION_COUNTRY_CODE);
            Assert.AreEqual(flights1[0].DEPARTURE_TIME, flights2[0].DEPARTURE_TIME);
            Assert.AreEqual(flights1[0].LANDING_TIME, flights2[0].LANDING_TIME);
            Assert.AreEqual(flights1[0].REMANING_TICKETS, flights2[0].REMANING_TICKETS);
            Assert.AreEqual(flights1[0].TOTAL_TICKETS, flights2[0].TOTAL_TICKETS);
        }
Esempio n. 7
0
        public IHttpActionResult GetCustomerByUserName(string username = "")
        {
            IHttpActionResult result   = null;
            Customer          customer = null;

            GetLoginToken();
            if (airlineCompanyLoginToken == null)
            {
                return(Unauthorized());
            }
            FlyCenter = FlyingCenterSystem.GetInstance();
            ILoggedInAirlineFacade airlineFacade = FlyCenter.GetFacede(airlineCompanyLoginToken) as ILoggedInAirlineFacade;
            IList <Flight>         flights       = airlineFacade.GetAllFlightsByAirline(airlineCompanyLoginToken);

            if (username != "")
            {
                customer = airlineFacade.GetCustomerByUserName(airlineCompanyLoginToken, username);
                result   = Ok(customer);
            }
            else if ((username != "" && customer == null) || username == "")
            {
                result = NotFound();
            }
            return(result);
        }
Esempio n. 8
0
        public IHttpActionResult CancelFlight([FromUri] long flightId)
        {
            GetLoginToken();

            if (flightId <= 0)
            {
                return(Content(HttpStatusCode.NotAcceptable, $"{flightId} not valid"));
            }
            FlyCenter = FlyingCenterSystem.GetInstance();
            ILoggedInAirlineFacade airlineFacade = FlyCenter.GetFacede(airlineCompanyLoginToken) as ILoggedInAirlineFacade;
            IHttpActionResult      result        = null;
            Flight flight = null;

            try
            {
                flight = airlineFacade.GetFlightById(airlineCompanyLoginToken, flightId);
                if (flight != null)
                {
                    airlineFacade.CancelFlight(airlineCompanyLoginToken, flight);
                }
                return(Content(HttpStatusCode.NotAcceptable, $"Flight with ID = {flightId} not found"));
            }
            catch (Exception e)
            {
                result = BadRequest("Flight hasn't been  deleted " + e.Message);
            }
            return(result);
        }
Esempio n. 9
0
        public void AirlineFacadeUpdateFlightMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);

            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);
            Flight updatedFlight = new Flight(flight1.ID, flight1.AirlineCompanyId, TestData.chadID, TestData.denmarkID, TestData.futureDate1, TestData.futureDate2, 199);

            airlineFacade1.UpdateFlight((LoginToken <AirlineCompany>)airlineToken1, updatedFlight);

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("testAnonymous", "99999", out ILoginToken anonymousToken);
            Flight actualFlight = anonymousFacade.GetFlight(flight1.ID);

            Assert.AreEqual(updatedFlight.ID, actualFlight.ID);
            Assert.AreEqual(updatedFlight.AirlineCompanyId, actualFlight.AirlineCompanyId);
            Assert.AreEqual(updatedFlight.OriginCountryCode, actualFlight.OriginCountryCode);
            Assert.AreEqual(updatedFlight.DestinationCountryCode, actualFlight.DestinationCountryCode);
            Assert.AreEqual(updatedFlight.DepartureTime, actualFlight.DepartureTime);
            Assert.AreEqual(updatedFlight.LandingTime, actualFlight.LandingTime);
            Assert.AreEqual(updatedFlight.RemainingTickets, actualFlight.RemainingTickets);
        }
        public void CustomerFacadeCancelTicketMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer1);

            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);
            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("", "", out ILoginToken anonymousToken);

            //Assert.AreEqual(200, anonymousFacade.GetFlight(flight1.ID).RemainingTickets);

            ILoggedInCustomerFacade customerFacade1 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer1.UserName, TestData.customer1.Password, out ILoginToken customerToken1);
            Ticket ticket1 = customerFacade1.PurchaseTicket((LoginToken <Customer>)customerToken1, flight1);

            Assert.AreEqual(199, anonymousFacade.GetFlight(flight1.ID).RemainingTickets);

            customerFacade1.CancelTicket((LoginToken <Customer>)customerToken1, ticket1);

            Assert.AreEqual(200, anonymousFacade.GetFlight(flight1.ID).RemainingTickets);
            Assert.AreEqual(0, customerFacade1.GetAllMyFlights((LoginToken <Customer>)customerToken1).Count);
        }
        public void FlightAlreadyExist()
        {
            InitDBUnitTest.InitDB();
            Flight flight1 = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);

            airlineCompanyFacade.CreateFlight(tAirlineCompany, flight1);
        }
Esempio n. 12
0
 public AirlineCompanyFacadeController(IFlightCenterSystem flightCenterSystem, IMapper mapper, LinkGenerator linkGenerator, ILogger <AirlineCompanyFacadeController> logger)
 {
     _flightCenterSystem    = flightCenterSystem;
     _mapper                = mapper;
     _loggedInAirlineFacade = _flightCenterSystem.GetFacade <LoggedInAirlineFacade>();
     _linkGenerator         = linkGenerator;
     _logger                = logger;
 }
 public ILoggedInAirlineFacade GetAirlineCompanyFacade(out LoginToken<AirlineCompany> tAirlineCompany)
 {
     FlyingCenterSystem FCS = FlyingCenterSystem.GetFlyingCenterSystemInstance();
     ILoginToken loginToken = FCS.Login(TestResource.CustomerFacade_AirlineCompany1_USER_NAME, TestResource.CustomerFacade_AirlineCompany1_PASSWORD);
     tAirlineCompany = loginToken as LoginToken<AirlineCompany>;
     ILoggedInAirlineFacade airlineCompanyFacade = FCS.GetFacade(loginToken) as ILoggedInAirlineFacade;
     return airlineCompanyFacade;
 }
Esempio n. 14
0
        public void AirlineLoginMethodWrongPasswordException()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, "wrongpass", out ILoginToken airlineToken1);
        }
Esempio n. 15
0
        public void AirlineFacadeModifyAirlineDetailsMethodEmptyPasswordException()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.ChangeMyPassword((LoginToken <AirlineCompany>)airlineToken1, TestData.airline1.Password, "");
        }
        public void AirlineCompanyFacadeFacade_CancelFlight_FlightCanceled()
        {
            InitDBUnitTest.InitDB();
            Flight flight1 = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);

            airlineCompanyFacade.CancelFlight(tAirlineCompany, flight1);
            Flight flight2 = airlineCompanyFacade.GetFlightByFlightId(tAirlineCompany, flight1.ID);

            Assert.AreEqual(null, flight2);
        }
Esempio n. 17
0
        public IHttpActionResult CreateNewFlight([FromBody] Flight flight)
        {
            GetLoginToken();
            if (airlineCompanyLoginToken == null)
            {
                return(Unauthorized());
            }
            FlyCenter = FlyingCenterSystem.GetInstance();
            ILoggedInAirlineFacade airlineFacade = FlyCenter.GetFacede(airlineCompanyLoginToken) as ILoggedInAirlineFacade;
            long flightId = airlineFacade.CreateFlight(airlineCompanyLoginToken, flight);

            return(CreatedAtRoute("createFlight", new { id = flightId }, flight));
        }
        public void AirlineCompanyFacadeFacade_ChangeMyPassword_PasswordChanged()
        {
            InitDBUnitTest.InitDB();
            AirlineCompany               airlineCompany1      = AdministratorFacade_CreateNewAirline1();
            ILoggedInAirlineFacade       airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);
            ILoggedInAdministratorFacade administratorFacade  = GetAdministratorFacade(out LoginToken <Administrator> tAdministrator);

            airlineCompanyFacade.ChangeMyPassword(tAirlineCompany, tAirlineCompany.User.PASSWORD, TestResource.AirlineCompanyFacade_NewPassword_PASSWORD);
            AirlineCompany airlineCompany2 = administratorFacade.GetAirlineCompanyById(tAdministrator, airlineCompany1.ID);

            Assert.AreNotEqual(null, airlineCompany2);
            Assert.AreEqual(TestResource.AirlineCompanyFacade_NewPassword_PASSWORD, airlineCompany2.PASSWORD);
        }
 public Flight AirlineCompanyFacadeFacade_CreateNewFlight1()
 {
     Flight newFlight1 = null;
     AirlineCompany airlineCompany1 = AdministratorFacade_CreateNewAirline1();
     ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken<AirlineCompany> tAirlineCompany);
     newFlight1 = CreateNewFlight1();
     newFlight1.AIRLINECOMPANY_ID = airlineCompany1.ID;
     newFlight1.ORIGIN_COUNTRY_CODE = airlineCompany1.COUNTRY_CODE;
     Country country2 = AdministratorFacade_CreateNewCountry2();
     newFlight1.DESTINATION_COUNTRY_CODE = country2.ID;
     long ID = airlineCompanyFacade.CreateFlight(tAirlineCompany, newFlight1);
     newFlight1.ID = ID;
     return newFlight1;
 }
Esempio n. 20
0
        public void AirlineFacadeChangeMyPasswordMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken);

            airlineFacade.ChangeMyPassword((LoginToken <AirlineCompany>)airlineToken, TestData.airline1.Password, "54321");

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("testAnonymous", "99999", out ILoginToken anonymousToken);

            Assert.AreEqual("54321", anonymousFacade.GetAirlineCompanyById(TestData.airline1.ID).Password);
        }
        public void CustomerControllerPurchaseTicketAPI()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.TEST_ADMIN_USERNAME, AirlineProjectConfig.TEST_ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer1);

            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);
            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);

            // ----------------------------------------------

            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri(CustomerURL);

            // Add an Accept header for JSON format.
            client.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));

            string customerCreds = string.Format($"{TestData.customer1.UserName}:{TestData.customer1.Password}");

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.Default.GetBytes(customerCreds)));

            HttpResponseMessage response = client.PostAsync("", new StringContent(JsonConvert.SerializeObject(flight1), Encoding.Default, "application/json")).Result;


            Ticket purchasedTicket;

            if (response.IsSuccessStatusCode)
            {
                purchasedTicket = response.Content.ReadAsAsync <Ticket>().Result;
            }
            else
            {
                purchasedTicket = new Ticket(0, 0, 0);
            }

            // -----------------------------------------------------------------------------

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("testAnonymous", "99999", out ILoginToken anonymousToken);
            IList <Flight>       flights         = anonymousFacade.GetAllFlights();
            Flight purchasedFlight = flights[0];

            Assert.AreEqual(TestData.customer1.ID, purchasedTicket.CustomerId);
            Assert.AreEqual(purchasedFlight.ID, purchasedTicket.FlightId);
        }
Esempio n. 22
0
        public void AirlineFacadeCancelFlightMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken);
            Flight newFlight = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);

            airlineFacade.CreateFlight((LoginToken <AirlineCompany>)airlineToken, newFlight);
            airlineFacade.CancelFlight((LoginToken <AirlineCompany>)airlineToken, newFlight);

            IAnonymousUserFacade anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("testAnonymous", "99999", out ILoginToken anonymousToken);

            Assert.AreEqual(null, anonymousFacade.GetFlight(newFlight.ID));
        }
        public void CustomerFacadePurchaseTicketMethodNoMoreTicketsException()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewCustomer((LoginToken <Administrator>)adminToken, TestData.customer1);

            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);
            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 0);

            airlineFacade1.CreateFlight((LoginToken <AirlineCompany>)airlineToken1, flight1);

            ILoggedInCustomerFacade customerFacade1 = (ILoggedInCustomerFacade)TestConfig.fcs.Login(TestData.customer1.UserName, TestData.customer1.Password, out ILoginToken customerToken1);

            customerFacade1.PurchaseTicket((LoginToken <Customer>)customerToken1, flight1);
        }
Esempio n. 24
0
        public void AirlineFacadeModifyAirlineDetailsMethodUsernameAlreadyExistsException()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);
            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline2);

            ILoggedInAirlineFacade airlineFacade1 = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken1);

            airlineFacade1.ModifyAirlineDetails((LoginToken <AirlineCompany>)airlineToken1, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade2  = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline2.UserName, TestData.airline2.Password, out ILoginToken airlineToken2);
            AirlineCompany         modifiedAirline = new AirlineCompany(TestData.airline2.ID, TestData.airline2.AirlineName, TestData.airline1.UserName, TestData.airline2.Password, TestData.airline2.CountryCode);

            modifiedAirline.UserName = TestData.airline1.UserName;
            airlineFacade2.ModifyAirlineDetails((LoginToken <AirlineCompany>)airlineToken2, modifiedAirline);
        }
Esempio n. 25
0
        public IHttpActionResult GetAllFlights()
        {
            GetLoginToken();
            if (airlineCompanyLoginToken == null)
            {
                return(Unauthorized());
            }
            FlyCenter = FlyingCenterSystem.GetInstance();
            ILoggedInAirlineFacade airlineFacade = FlyCenter.GetFacede(airlineCompanyLoginToken) as ILoggedInAirlineFacade;
            IList <Flight>         flights       = airlineFacade.GetAllFlightsByAirline(airlineCompanyLoginToken);

            if (flights.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(flights));
        }
        public IHttpActionResult GetAllTickets()
        {
            GetLoginToken();
            if (airlineCompanyLoginToken == null)
            {
                return(Unauthorized());
            }
            FCS = FlyingCenterSystem.GetFlyingCenterSystemInstance();
            ILoggedInAirlineFacade airlineCompanyFacade = FCS.GetFacade(airlineCompanyLoginToken) as ILoggedInAirlineFacade;
            IList <Ticket>         Tickets = airlineCompanyFacade.GetAllTickets(airlineCompanyLoginToken);

            if (Tickets.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(Tickets));
        }
        public void AirlineCompanyFacadeFacade_CreateNewFlight_FlightAdded()
        {
            Flight newFlight = null;

            InitDBUnitTest.InitDB();
            Flight flight = AirlineCompanyFacadeFacade_CreateNewFlight1();
            ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> t);

            newFlight    = CreateNewFlight1();
            newFlight.ID = flight.ID;
            newFlight.AIRLINECOMPANY_ID        = flight.AIRLINECOMPANY_ID;
            newFlight.ORIGIN_COUNTRY_CODE      = flight.ORIGIN_COUNTRY_CODE;
            newFlight.DESTINATION_COUNTRY_CODE = flight.DESTINATION_COUNTRY_CODE;
            Flight f = airlineCompanyFacade.GetFlightByFlightId(t, newFlight.ID);

            Assert.AreNotEqual(null, f);
            Assert.AreEqual(newFlight, f);
        }
Esempio n. 28
0
        public void AnonymousFacadeGetAllFlightsVacancyMethod()
        {
            ILoggedInAdministratorFacade adminFacade = (ILoggedInAdministratorFacade)TestConfig.fcs.Login(AirlineProjectConfig.ADMIN_USERNAME, AirlineProjectConfig.ADMIN_PASSWORD, out ILoginToken adminToken);

            adminFacade.CreateNewAirline((LoginToken <Administrator>)adminToken, TestData.airline1);

            ILoggedInAirlineFacade airlineFacade = (ILoggedInAirlineFacade)TestConfig.fcs.Login(TestData.airline1.UserName, TestData.airline1.Password, out ILoginToken airlineToken);
            Flight flight1 = new Flight(0, 0, TestData.argentinaID, TestData.barbadosID, TestData.futureDate1, TestData.futureDate2, 200);
            Flight flight2 = new Flight(0, 0, TestData.chadID, TestData.denmarkID, TestData.futureDate1, TestData.futureDate2, 190);

            airlineFacade.CreateFlight((LoginToken <AirlineCompany>)airlineToken, flight1);
            airlineFacade.CreateFlight((LoginToken <AirlineCompany>)airlineToken, flight2);

            IAnonymousUserFacade     anonymousFacade = (IAnonymousUserFacade)TestConfig.fcs.Login("testAnonymous", "99999", out ILoginToken anonymousToken);
            Dictionary <Flight, int> flightsVacancy  = anonymousFacade.GetAllFlightsVacancy();

            Assert.AreEqual(flight1.RemainingTickets, flightsVacancy[flight1]);
            Assert.AreEqual(flight2.RemainingTickets, flightsVacancy[flight2]);
        }
 public void NoTicketLeft()
 {
     AddToLogFile("run CustomerFacade NoTicketLeft Exception");
     InitDBUnitTest.InitDB();
     Flight newFlight1 = null;
     AdministratorFacade_CreateNewCustomer();
     Flight flight1 = AirlineCompanyFacadeFacade_CreateNewFlight1();
     ILoggedInCustomerFacade customerFacade = GetCustomerFacade(out LoginToken<Customer> tCustomer);
     ILoggedInAirlineFacade airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken<AirlineCompany> tAirlineCompany);
     newFlight1 = CreateNewFlight1();
     newFlight1.ID = flight1.ID;
     newFlight1.AIRLINECOMPANY_ID = flight1.AIRLINECOMPANY_ID;
     newFlight1.ORIGIN_COUNTRY_CODE = flight1.ORIGIN_COUNTRY_CODE;
     newFlight1.DESTINATION_COUNTRY_CODE = flight1.DESTINATION_COUNTRY_CODE;
     newFlight1.REMANING_TICKETS = 0;
     airlineCompanyFacade.UpdateRemainingTickets(tAirlineCompany, newFlight1);
     Flight flight2 = customerFacade.GetFlightByFlightId(tCustomer, newFlight1.ID);
     customerFacade.PurchaseTicket(tCustomer, flight2);
 }
        public void AirlineCompanyFacadeFacade_ModififyAirlineDetails_DetailsModified()
        {
            AirlineCompany newAirlineCompany = null;

            InitDBUnitTest.InitDB();
            AirlineCompany               airlineCompany1      = AdministratorFacade_CreateNewAirline1();
            ILoggedInAirlineFacade       airlineCompanyFacade = GetAirlineCompanyFacade(out LoginToken <AirlineCompany> tAirlineCompany);
            ILoggedInAdministratorFacade administratorFacade  = GetAdministratorFacade(out LoginToken <Administrator> tAdministrator);

            newAirlineCompany              = CreateNewAirlineCompany();
            newAirlineCompany.ID           = airlineCompany1.ID;
            newAirlineCompany.AIRLINE_NAME = TestResource.AirlineCompanyFacade_UpdatedName_AIRLINE_NAME;
            newAirlineCompany.COUNTRY_CODE = airlineCompany1.COUNTRY_CODE;
            airlineCompanyFacade.ModifyAirlineDetails(tAirlineCompany, newAirlineCompany);
            AirlineCompany airlineCompany2 = administratorFacade.GetAirlineCompanyById(tAdministrator, newAirlineCompany.ID);

            Assert.AreNotEqual(null, airlineCompany2);
            Assert.AreEqual(TestResource.AirlineCompanyFacade_UpdatedName_AIRLINE_NAME, airlineCompany2.AIRLINE_NAME);
        }