Exemplo n.º 1
0
        public void Calculate_should_calculate_flights_based_on_days_in_date_period()
        {
            var request = FlightCalculationTestBuilder.New()
                          .WithFlightCalculationRequestTestBuilder()
                          .WithDestination("DXB")
                          .WithOrigin("IKA")
                          .WithFlightNumber("WS-20")
                          .WithFrom(CreateDateTime(2018, 09, 30))
                          .WithTo(CreateDateTime(2018, 10, 15))
                          .WithWeeklyTimeTable(CreateWeeklyTimetable(DayOfWeek.Monday, _nine, _tenThirty))
                          .WithWeeklyTimeTable(CreateWeeklyTimetable(DayOfWeek.Wednesday, _twentyThirty, _twentyTwo))
                          .Build();

            var flightBuilder = new FlightTestBuilder()
                                .WithFlightNumber("WS-20")
                                .WithOrigin("IKA")
                                .WithDestination("DXB");

            var expectedFlights = new List <Flight>()
            {
                CreateFlightForMonday(1),
                CreateFlightForWednesday(3),
                CreateFlightForMonday(8),
                CreateFlightForWednesday(10),
                CreateFlightForMonday(15),
            };

            var sut = new FlightCalculationService();
            var calculatedFlights = sut.Calculate(request);

            calculatedFlights.Should().BeEquivalentTo(expectedFlights);
        }
Exemplo n.º 2
0
 public FlightCalculationTests()
 {
     this._flightBuilder = new FlightTestBuilder();
     this._nine          = new TimeSpan(9, 0, 0);
     this._tenThirty     = new TimeSpan(10, 30, 0);
     this._twentyThirty  = new TimeSpan(20, 30, 0);
     this._twentyTwo     = new TimeSpan(22, 00, 0);
 }
        public void Should_save_flight()
        {
            var flight     = new FlightTestBuilder().Build();
            var repository = new FlightRepository(this.DbContext);

            repository.Add(flight);
            ClearChangeTracker();

            var actualFlight = repository.GetById(flight.Id);

            actualFlight.Should().BeEquivalentTo(flight);
        }
        public void Get_should_return_flights_based_on_flight_number()
        {
            var repository = new FakeFlightRepository();
            var flight     = new FlightTestBuilder().Build();

            repository.Add(flight);
            var expectedFlight = new FlightDto()
            {
                FlightNumber = flight.FlightNumber,
                Destination  = flight.Route.Destination,
                DepartDate   = flight.DepartDate,
                ArriveDate   = flight.ArriveDate,
                Id           = flight.Id,
                Origin       = flight.Route.Origin
            };
            var service = new FlightGenerationService(repository, null);

            var actualFlights = service.Get(flight.FlightNumber);

            actualFlights.Count.Should().Be(1);
            actualFlights.Should().AllBeEquivalentTo(expectedFlight);
        }
Exemplo n.º 5
0
 public FlightTests()
 {
     this._flightBuilder = new FlightTestBuilder();
 }