Exemplo n.º 1
0
 public FlightsService(
     IRepository <Flight> repository,
     IMapper mapper,
     AbstractValidator <Flight> validator) : base(repository, mapper, validator)
 {
     _repository = new FlightsRepository(
         new AirportContext());
 }
Exemplo n.º 2
0
        public void GetScheduleByFlightFailTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var actualSchedule       = moqFlightsRepository.GetSchedulesByFlight(500);

            // Asset // count should be 0 since flight id is invalid
            Assert.AreEqual(0, actualSchedule.Count);
        }
Exemplo n.º 3
0
        public override void TestInitialize()
        {
            base.TestInitialize();
            var r = new FlightOfPassengersRepository();
            var p = new PassengersRepository();
            var f = new FlightsRepository();
            var l = new LuggagesRepository();

            obj = new TestClass(r, p, f, l);
        }
Exemplo n.º 4
0
        public override void TestInitialize()
        {
            base.TestInitialize();
            var r  = new FlightsRepository();
            var c  = new ApiCountriesRepository();
            var p  = new ApiCitiesRepository();
            var s  = new StopOversRepository();
            var ac = new AirlineCompaniesRepository();

            obj = new TestClass(r, c, p, s, ac);
        }
Exemplo n.º 5
0
        public void GetFlightsScheduleFailTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var actualSchedule       = moqFlightsRepository.GetFlightSchedule(new FlightQuery()
            {
                StartDate = DateTime.Today, EndDate = DateTime.Today.AddDays(1), NumberOfPax = 30
            });

            //Assert count should be 0 since number of pax is greater than 30
            Assert.AreEqual(0, actualSchedule.Count);
        }
Exemplo n.º 6
0
        public void GetFlightsScheduleTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var actualSchedule       = moqFlightsRepository.GetFlightSchedule(new FlightQuery()
            {
                StartDate = DateTime.Today, EndDate = DateTime.Today.AddDays(1), NumberOfPax = 2
            });

            Assert.IsNotNull(actualSchedule);
            Assert.AreEqual(1, actualSchedule.Count);
            Assert.AreEqual(1001, actualSchedule[0].ScheduleId);
        }
Exemplo n.º 7
0
        public void GetScheduleByFlightTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var actualSchedule       = moqFlightsRepository.GetSchedulesByFlight(101);

            // Asset
            Assert.IsNotNull(actualSchedule);
            //Ensure there is only 1 schedule.
            Assert.AreEqual(1, actualSchedule.Count);
            //Ensure Schedule id is same as set in moq object
            Assert.AreEqual(1001, actualSchedule[0].ScheduleId);
        }
Exemplo n.º 8
0
        public void AddBookingFailTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var newBooking           = new BookingInfo()
            {
                Name = "Shweta", NoOfPax = 10, ScheduleId = 1001
            };
            var added = moqFlightsRepository.AddBooking(newBooking);

            //Here booking will fail since No of pax is more than available seat capacity
            //Ensure that record is added
            Assert.IsTrue(added == 0, "Booking is added");
        }
Exemplo n.º 9
0
        public void GetAllFlightsTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);

            var flights = moqFlightsRepository.GetAllFlights();

            // Asset
            Assert.IsNotNull(flights);
            //Ensure there is only 1 flight.
            Assert.AreEqual(1, flights.Count);
            //Ensure flight id is same as set in moq object
            Assert.AreEqual(101, flights[0].FlightId);
        }
Exemplo n.º 10
0
        public void SheduleDeleteDeparture_When_All_Args_IsOk_When_Should_Return_CreatedResult_And_Add_Departure_To_dB_And_Then_Delete()
        {
            // Arrange

            #region ControllerInit

            MSSQLContext         context = new MSSQLContext();
            PlaneTypesRepository planeTypesRepository = new PlaneTypesRepository();
            PlanesRepository     planesRepository     = new PlanesRepository();
            AircraftUnitOfWork   uow     = new AircraftUnitOfWork(planesRepository, planeTypesRepository, context);
            AircraftService      service = new AircraftService(uow);

            CrewsRepository        crewsRepository        = new CrewsRepository();
            PilotsRepository       pilotsRepository       = new PilotsRepository();
            StewardessesRepository stewardessesRepository = new StewardessesRepository();
            CrewingUnitOfWork      cuow           = new CrewingUnitOfWork(crewsRepository, pilotsRepository, stewardessesRepository, context);
            CrewingService         crewingService = new CrewingService(cuow);

            FlightsRepository          flightRepository     = new FlightsRepository();
            DeparturesRepository       departuresRepository = new DeparturesRepository();
            TicketsRepository          ticketsRepository    = new TicketsRepository();
            FlightOperationsUnitOfWork flightOpUow          = new FlightOperationsUnitOfWork(flightRepository, ticketsRepository, departuresRepository, context);
            FlightOperationsService    flightOpeService     = new FlightOperationsService(flightOpUow);

            AiroportService   airportService = new AiroportService(service, crewingService, flightOpeService);
            AirportController controller     = new AirportController(mapper.GetDefaultMapper(), airportService);

            #endregion

            var departureDto = new DepartureDTO()
            {
                CrewId        = crewId,
                DepartureTime = new DateTime(2018, 8, 10, 11, 0, 0),
                PlaneId       = 2,
                FlightId      = 1
            };

            var addResult = controller.SheduleDeparture(departureDto);

            // add assert
            Assert.IsInstanceOf <CreatedResult>(addResult);
            Assert.IsInstanceOf <DepartureDTO>((addResult as CreatedResult).Value);

            // delete act
            var addedDepartureDTO = (addResult as CreatedResult).Value as DepartureDTO;
            var deleteResult      = controller.DeleteDeparture(addedDepartureDTO.Id);
            // delete assert
            Assert.IsInstanceOf <OkResult>(deleteResult);

            Assert.IsNull(departuresRepository.Get(addedDepartureDTO.Id));
        }
Exemplo n.º 11
0
        public FlightsService()
        {
            _airportFlightsRepository = new FlightsRepository();
            var mapperConfig = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <FlightModel, Flight>();
                cfg.CreateMap <FlightModel, Flight>().ReverseMap();
                cfg.CreateMap <PilotModel, Pilot>();
                cfg.CreateMap <PilotModel, Pilot>().ReverseMap();
                cfg.CreateMap <PlaneModel, Plane>();
                cfg.CreateMap <PlaneModel, Plane>().ReverseMap();
            });

            _mapper = new Mapper(mapperConfig);
        }
        public void Should_Add_Flight()
        {
            // Given
            var options = new DbContextOptionsBuilder <CustomContext>()
                          .UseInMemoryDatabase("TestDB")
                          .UseLazyLoadingProxies()
                          .EnableSensitiveDataLogging()
                          .Options;

            var flightId = 100;

            // When
            using (var context = new CustomContext(options))
            {
                context.Database.EnsureCreated();

                var uow                = new UnitOfWork(context);
                var repository         = new FlightsRepository(context);
                var airportRepository  = new AirportsRepository(context);
                var aircraftRepository = new AircraftRepository(context);

                airportRepository.Add(_departureAirport);
                airportRepository.Add(_destinationAirport);
                aircraftRepository.Add(_aircraft);
                uow.Save();

                var flight = new Flight(_departureAirport, _destinationAirport, _aircraft)
                {
                    Id = 100
                };

                repository.Add(flight);
                uow.Save();
            }

            // Then
            using (var context = new CustomContext(options))
            {
                var repository = new FlightsRepository(context);
                var result     = repository.GetAll().Single(x => x.Id == flightId);

                Assert.NotNull(result);
                Assert.Equal(_departureAirport.Id, result.DepartureAirport.Id);
            }
        }
Exemplo n.º 13
0
        public void AddBookingTest()
        {
            var moqFlightsRepository = new FlightsRepository(_moqContext);
            var newBooking           = new BookingInfo()
            {
                Name = "Gautam", NoOfPax = 2, ScheduleId = 1001
            };
            var added = moqFlightsRepository.AddBooking(newBooking);

            //Ensure that record is added
            Assert.IsTrue(added > 0, "Booking is not added");

            var addedBooking = moqFlightsRepository.GetBookingById(added);

            //Ensure that added object is same as moq object
            Assert.AreEqual(newBooking.Name, addedBooking.Name);
            Assert.AreEqual(newBooking.NoOfPax, addedBooking.NoOfPax);
            Assert.AreEqual(newBooking.ScheduleId, addedBooking.ScheduleId);
        }
Exemplo n.º 14
0
 public FlightsService(FlightsRepository repo)
 {
     _repo = repo;
 }
Exemplo n.º 15
0
        public FlightsRepositoryTest()
        {
            context = factory.GetUAAContext();

            flightsRepository = new FlightsRepository(context);
        }