Пример #1
0
        private HotelAvailabilityResponse SetMockedHotelAvailabilityResponse()
        {
            var response = new HotelAvailabilityResponse();

            response.Count    = 2;
            response.CheckIn  = DateTime.Now.AddDays(30);
            response.CheckOut = DateTime.Now.AddDays(35);

            var availableHotels = new List <HotelResponse>();

            var availableHotelFirst = new HotelResponse();

            availableHotelFirst.Code           = "01";
            availableHotelFirst.AvailableRooms = new List <HotelAvailableRoom> {
                new HotelAvailableRoom {
                    Id = 1, Code = "ROM_01", Price = 100
                },
            };
            availableHotels.Add(availableHotelFirst);


            var availableHotelSecond = new HotelResponse();

            availableHotelSecond.Code           = "02";
            availableHotelSecond.AvailableRooms = new List <HotelAvailableRoom> {
                new HotelAvailableRoom {
                    Id = 3, Code = "ROM_03", Price = 150
                },
            };
            availableHotels.Add(availableHotelSecond);


            response.AvailableHotels = availableHotels;
            return(response);
        }
        public void When_MapHotelAvailabilityResponse()
        {
            // Arrange
            var subject                    = Mocker.CreateInstance <Mapper>();
            var hotelAvailability          = AutoFixture.Create <HotelAvailability>();
            var hotelsAvailabilityResponse = new HotelAvailabilityResponse {
                Id           = hotelAvailability.Id,
                HotelId      = hotelAvailability.HotelId,
                Infants      = hotelAvailability.Infants,
                Children     = hotelAvailability.Children,
                Adults       = hotelAvailability.Adults,
                HotelName    = hotelAvailability.HotelName,
                Meal         = hotelAvailability.Meal,
                Room         = hotelAvailability.Room,
                CurrencyCode = hotelAvailability.CurrencyCode,
                NetPrice     = hotelAvailability.NetPrice,
                StayDate     = hotelAvailability.StayDate,
                EndDate      = hotelAvailability.EndDate,
                AirportCode  = hotelAvailability.AirportCode,
                Region       = hotelAvailability.Region,
                Country      = hotelAvailability.Country
            };

            // Act
            var result = subject.Map(hotelAvailability);

            // Assert
            result.Should().BeEquivalentTo(hotelsAvailabilityResponse);
        }
        public AvailabilityResponse ProcessAvailability(HotelAvailabilityResponse response)
        {
            var result = new AvailabilityResponse();

            result.CheckIn  = response.CheckIn;
            result.CheckOut = response.CheckOut;
            var availableHotels = new List <AvailableHotel>();

            foreach (var hotels in response.AvailableHotels)
            {
                var hotel = new AvailableHotel();

                hotel.Code = hotels.Code;

                var rooms = new List <AvailableRoom>();
                foreach (var room in hotels.AvailableRooms)
                {
                    var data = new AvailableRoom();
                    data.Id       = room.Id;
                    data.Code     = room.Code;
                    data.Price    = room.Price;
                    data.NewPrice = _pricingService.CalculatePrice(response.CheckIn, response.CheckOut, room.Price);
                    rooms.Add(data);
                }
                hotel.AvailableRooms = rooms;

                availableHotels.Add(hotel);
            }

            result.AvailableHotels = availableHotels;


            return(result);
        }
Пример #4
0
 public SearchServiceFixtureData()
 {
     MockedHotels                    = SetMockedHotels();
     MockedHotelCategory             = SetMockedHotelCategory();
     MockedHotel                     = SetMockedHotel();
     MockedExpectedHotel             = SetMockedExpectedHotel();
     MockedHotelCategorySecond       = SetMockedHotelCategorySecond();
     MockedHotelAvailabilityResponse = SetMockedHotelAvailabilityResponse();
     ValidSearchRequest              = SetValidSearchRequest();
 }
 public AvailabilityFixtureData()
 {
     MockedHotelAvailabilityResponse = SetMockedHotelAvailabilityResponse();
 }