示例#1
0
        public void RemovePilotFromCrewRemovesCrewPilot()
        {
            Pilot testPilot = new Pilot
            {
                BirthDate  = new DateTime(2000, 11, 1),
                Experience = 2,
                FirstName  = "Jonh",
                SecondName = "Smith"
            };

            _dataContext.Pilots.Add(testPilot);
            _dataContext.SaveChanges();

            Crew crew = new Crew()
            {
                Name = "Pilot John's crew"
            };

            _dataContext.Crews.Add(crew);
            _dataContext.SaveChanges();

            var crewPilotToAdd = new CrewPilot
            {
                Crew    = crew,
                CrewId  = crew.Id,
                Pilot   = testPilot,
                PilotId = testPilot.Id
            };

            crew.CrewPilot = crewPilotToAdd;
            _dataContext.Crews.Update(crew);
            _dataContext.SaveChanges();

            var crewFromDatabase = _dataContext.Crews.Find(crew.Id);

            Assert.IsNotNull(crewFromDatabase.CrewPilot);

            _dataContext.Pilots.Remove(testPilot);
            _dataContext.SaveChanges();

            crewFromDatabase = _dataContext.Crews.Find(crew.Id);

            Assert.IsNull(crewFromDatabase.CrewPilot);
        }
示例#2
0
        public void CannotDeleteFlightIfDepartureExists()
        {
            var testFlight = new Flight
            {
                Destination     = "Lviv",
                Number          = "GCK208",
                PlaceDeparture  = "Kyiv",
                TimeDeparture   = new DateTime(2018, 7, 5, 9, 30, 0),
                TimeDestination = new DateTime(2018, 7, 5, 11, 30, 0)
            };

            _dataContext.Flights.Add(testFlight);
            _dataContext.SaveChanges();

            Crew crew = new Crew()
            {
                Name = "Pilot John's crew"
            };

            _dataContext.Crews.Add(crew);
            _dataContext.SaveChanges();

            Pilot testPilot = new Pilot
            {
                BirthDate  = new DateTime(2000, 11, 1),
                Experience = 2,
                FirstName  = "Jonh",
                SecondName = "Smith"
            };

            _dataContext.Pilots.Add(testPilot);
            _dataContext.SaveChanges();

            var crewPilotToAdd = new CrewPilot
            {
                Crew    = crew,
                CrewId  = crew.Id,
                Pilot   = testPilot,
                PilotId = testPilot.Id
            };

            crew.CrewPilot = crewPilotToAdd;

            _dataContext.Crews.Update(crew);
            _dataContext.SaveChanges();

            var planeType = new PlaneType()
            {
                CarryingCapacity = 10,
                PlaneModel       = "Passanger",
                PlacesAmount     = 100
            };

            _dataContext.PlaneTypes.Add(planeType);
            _dataContext.SaveChanges();

            var plane = new Plane
            {
                LifeSpan        = 10,
                ManufectureDate = new DateTime(1995, 12, 1),
                PlaneName       = "Litachok",
                PlaneTypeId     = planeType.Id
            };

            _dataContext.Planes.Add(plane);
            _dataContext.SaveChanges();

            var departure = new Departure()
            {
                CrewId        = crew.Id,
                DepartureDate = DateTime.Now,
                FlightId      = testFlight.Id,
                PlaneId       = plane.Id
            };

            _dataContext.Departures.Add(departure);
            _dataContext.SaveChanges();

            var flightFromDb = _dataContext.Flights.Find(testFlight.Id);

            _dataContext.Flights.Remove(flightFromDb);
            _dataContext.SaveChanges();
        }