Пример #1
0
        public HomeModule()
        {
            Get["/"] = _ => {
            return View["index.cshtml"];
              };
              Get["/flights"] = _ => {
            List<Flight> allFlights = Flight.GetAll();
            List<City> allCities = City.GetAll();
            Dictionary<string,object> model = new Dictionary<string,object>{
              {"allFlights", allFlights},
              {"allCities", allCities},
              {"message","welcome to our airline"}
            };
            return View["flights.cshtml",model];
              };

              Post["/add_new_city"] = _ => {
            City newCity = new City(  Request.Form["new-name"],
                                  Request.Form["new-state"],
                                  Request.Form["new-country"]);
            newCity.Save();

            List<Flight> allFlights = Flight.GetAll();
            List<City> allCities = City.GetAll();
            Dictionary<string,object> model = new Dictionary<string,object>{
              {"allFlights", allFlights},
              {"allCities", allCities},
              {"message","You just add " +Request.Form["new-name"]+" Cities"}
            };
              return View["flights.cshtml",model];

              };

              Post["/add_new_flight"] = _ => {
            Flight newFlight = new Flight(
                                  Request.Form["flight-name"],
                                  Request.Form["flight-status"],
                                  Request.Form["flight-depart"],
                                  Request.Form["flight-return"],
                                  Request.Form["flight-complete"]
                                  );
            newFlight.Save();

            List<Flight> allFlights = Flight.GetAll();
            List<City> allCities = City.GetAll();
            Dictionary<string,object> model = new Dictionary<string,object>{
              {"allFlights", allFlights},
              {"allCities", allCities},
              {"message","You just add " +  Request.Form["flight-name"]+" Flights"}
            };
              return View["flights.cshtml",model];

              };
        }
Пример #2
0
        public void Test_AddCity_AddsCityToFlight()
        {
            DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              City departCity = new City("Seattle","WA","USA");
              City arrivalCity = new City("New York","WA","USA");

              departCity.Save();
              arrivalCity.Save();

              //Act
              testFlight.AddCity(departCity,arrivalCity);
              List<City> result = testFlight.GetCities();
              List<City> testList = new List<City> {departCity,arrivalCity};

              //Assert
              Assert.Equal(testList, result);
        }
Пример #3
0
        public static Flight Find(int id)
        {
            SqlConnection conn = DB.Connection();
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT * FROM flights WHERE id = @FlightId;", conn);
              SqlParameter flightIdParameter = new SqlParameter();
              flightIdParameter.ParameterName = "@FlightId";
              flightIdParameter.Value = id.ToString();
              cmd.Parameters.Add(flightIdParameter);
              SqlDataReader rdr = cmd.ExecuteReader();

              int foundFlightId = 0;
              string foundFlightFlightName = null;
              string foundFlightStatus = null;
              bool foundFlightComplete = false;
              DateTime foundFlightDepartingTime = new DateTime(1000, 1, 1);
              DateTime foundFlightReturningTime = new DateTime(1000, 1, 1);

              while(rdr.Read())
              {
            foundFlightId = rdr.GetInt32(0);
            foundFlightFlightName = rdr.GetString(1);
            foundFlightStatus = rdr.GetString(2);
            foundFlightDepartingTime = rdr.GetDateTime(3);
            foundFlightReturningTime = rdr.GetDateTime(4);
            foundFlightComplete = rdr.GetBoolean(5);
              }
              Flight foundFlight = new Flight(foundFlightFlightName,foundFlightStatus, foundFlightDepartingTime,foundFlightReturningTime,foundFlightComplete,foundFlightId);

              if (rdr != null)
              {
            rdr.Close();
              }
              if (conn != null)
              {
            conn.Close();
              }
              return foundFlight;
        }
Пример #4
0
        public void Test_Delete_DeletesFlightAssociationsFromDatabase()
        {
            //Arrange
              DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              City departCity = new City("Seattle","WA","USA");
              City arrivalCity = new City("New York","WA","USA");

              departCity.Save();
              arrivalCity.Save();

              //Act
              testFlight.AddCity(departCity,arrivalCity);
              testFlight.Delete();

              List<Flight> resultCityFlights = departCity.GetFlightsbyDeparting();
              List<Flight> testCityFlights = new List<Flight> {};

              //Assert
              Assert.Equal(testCityFlights, resultCityFlights);
        }
Пример #5
0
        public void Test_Save_SavesToDatabase()
        {
            DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();
              List<Flight> result = Flight.GetAll();
              List<Flight> testList = new List<Flight>{testFlight};

              Assert.Equal(testList, result);
        }
Пример #6
0
        public void Test_Save_AssignsIdToObject()
        {
            DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              Flight savedFlight = Flight.GetAll()[0];
              int result=savedFlight.GetId();
              int testId=testFlight.GetId();

              Assert.Equal(testId,result);
        }
Пример #7
0
        public void Test_GetComplete_FromDatabase()
        {
            //Arrange
              DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time,true);
              testFlight.Save();
              List<Flight> result = Flight.GetAll();

              //Assert
              Assert.Equal(true, result[0].GetComplete());
        }
Пример #8
0
        public void Test_Find_FindsFlightInDatabase()
        {
            DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              Flight foundFlight = Flight.Find(testFlight.GetId());

              Assert.Equal(testFlight, foundFlight);
        }
Пример #9
0
        public void Test_Equal_ReturnsTrueIfDescriptionsAreTheSame()
        {
            DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight firstFlight = new Flight("E201","On time",departing_time,returning_time);
              Flight secondFlight = new Flight("E201","On time",departing_time,returning_time);

              Assert.Equal(firstFlight,secondFlight);
        }
Пример #10
0
        public void Test_GetFlightsbyDeparting_ReturnAllCityFlights()
        {
            City departCity = new City("Seattle","WA","USA");
              City arrivalCity = new City("New York","WA","USA");

              departCity.Save();
              arrivalCity.Save();

              DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              Flight testFlight2 = new Flight("E202","Late",departing_time,returning_time);
              testFlight2.Save();

              departCity.AddFlyingFromFlight(testFlight,arrivalCity);
              List<Flight> savedFlights = departCity.GetFlightsbyDeparting();
              List<Flight> testList= new List<Flight>{testFlight};
              Assert.Equal(testList,savedFlights);
        }
Пример #11
0
        public void Test_Delete_DeletesCityAssociationsFromDatabase()
        {
            //Arrange

              City departCity = new City("Seattle","WA","USA");
              City arrivalCity = new City("New York","WA","USA");

              departCity.Save();
              arrivalCity.Save();

              DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              Flight testFlight2 = new Flight("E202","Late",departing_time,returning_time);
              testFlight2.Save();

              departCity.AddFlyingFromFlight(testFlight,arrivalCity);
              departCity.Delete();

              List<Flight> allflights= Flight.GetAll();
              List<Flight> testList= new List<Flight>{testFlight2};

              //Assert
              Assert.Equal(testList, allflights);
        }
Пример #12
0
        public void Test_AddFlyingFromFlight_AddsFlightToCity()
        {
            //Arrange
              City departCity = new City("Seattle","WA","USA");
              City arrivalCity = new City("New York","WA","USA");

              departCity.Save();
              arrivalCity.Save();

              DateTime departing_time= new DateTime(2016,06,05);
              DateTime returning_time = new DateTime(2016, 1, 1);
              Flight testFlight = new Flight("E201","On time",departing_time,returning_time);
              testFlight.Save();

              Flight testFlight2 = new Flight("E202","Late",departing_time,returning_time);
              testFlight2.Save();

              //Act
              departCity.AddFlyingFromFlight(testFlight,arrivalCity);
              departCity.AddFlyingFromFlight(testFlight2,arrivalCity);

              List<Flight> result = departCity.GetFlightsbyDeparting();
              List<Flight> testList = new List<Flight> {testFlight, testFlight2};

              Assert.Equal(testList, result);
        }
Пример #13
0
        public static List<Flight> GetAll()
        {
            List<Flight> AllFlights = new List<Flight>{};

              SqlConnection conn = DB.Connection();
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT * FROM flights;", conn);
              SqlDataReader rdr = cmd.ExecuteReader();

              while(rdr.Read())
              {
            int flightId = rdr.GetInt32(0);
            string flightFlightName = rdr.GetString(1);
            string flightFlightStatus = rdr.GetString(2);
            DateTime flightDepartingTime = rdr.GetDateTime(3);
            DateTime flightReturningTime = rdr.GetDateTime(4);
            bool flightComplete=rdr.GetBoolean(5);
            Flight newFlight = new Flight(flightFlightName,flightFlightStatus, flightDepartingTime,flightReturningTime,flightComplete, flightId);
            AllFlights.Add(newFlight);
              }
              if (rdr != null)
              {
            rdr.Close();
              }
              if (conn != null)
              {
            conn.Close();
              }
              return AllFlights;
        }
Пример #14
0
        public List<Flight> GetFlightsbyDeparting()
        {
            SqlConnection conn = DB.Connection();
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT flight_id FROM flights_cities WHERE departing_city_id = @CityId", conn);

              SqlParameter cityIdParameter = new SqlParameter();
              cityIdParameter.ParameterName="@CityId";
              cityIdParameter.Value=this.GetId();
              cmd.Parameters.Add(cityIdParameter);

              SqlDataReader rdr = cmd.ExecuteReader();

              List<int> departingflightIds = new List<int> {};
              while(rdr.Read())
              {
            int flightId = rdr.GetInt32(0);
            departingflightIds.Add(flightId);
              }

              if (rdr != null)
              {
            rdr.Close();
              }

              List<Flight> flights = new List<Flight>{};
              foreach(int flightId in departingflightIds)
              {
              SqlCommand flightQuery = new SqlCommand("SELECT * FROM flights WHERE id= @FlightId;",conn);

              SqlParameter flightIdParameter= new SqlParameter();
              flightIdParameter.ParameterName="@FlightId";
              flightIdParameter.Value=flightId;
              flightQuery.Parameters.Add(flightIdParameter);

              SqlDataReader queryReader = flightQuery.ExecuteReader();
              while(queryReader.Read())
              {
            int thisFlightId=queryReader.GetInt32(0);
            string flightName=queryReader.GetString(1);
            string flightStatus=queryReader.GetString(2);
            DateTime departingTime=queryReader.GetDateTime(3);
            DateTime returningTime=queryReader.GetDateTime(4);
            bool flightComplete=queryReader.GetBoolean(5);

            Flight foundFlight = new Flight(flightName,flightStatus,departingTime,returningTime,flightComplete,thisFlightId);
            flights.Add(foundFlight);
              }
              if(queryReader!= null)
              {
            queryReader.Close();
              }
            }
            if(conn != null)
            {
              conn.Close();
            }
            return flights;
        }
Пример #15
0
        public void AddFlyingFromFlight(Flight newFlight, City FlyingToCity)
        {
            SqlConnection conn = DB.Connection();
              conn.Open();

              SqlCommand cmd = new SqlCommand("INSERT INTO flights_cities(flight_id,departing_city_id,returning_city_id) VALUES(@FlightId,@DepartCityId,@ReturningCityId);",conn);

              SqlParameter newFlightIdParameter = new SqlParameter();
              newFlightIdParameter.ParameterName = "@FlightId";
              newFlightIdParameter.Value=newFlight.GetId();
              cmd.Parameters.Add(newFlightIdParameter);

              SqlParameter departCityIdParameter = new SqlParameter();
              departCityIdParameter.ParameterName="@DepartCityId";
              departCityIdParameter.Value=this.GetId();
              cmd.Parameters.Add(departCityIdParameter);

              SqlParameter ReturningCityIdParameter = new SqlParameter();
              ReturningCityIdParameter.ParameterName="@ReturningCityId";
              ReturningCityIdParameter.Value=FlyingToCity.GetId();
              cmd.Parameters.Add(ReturningCityIdParameter);

              cmd.ExecuteNonQuery();
              if(conn != null)
              {
            conn.Close();
              }
        }