コード例 #1
0
 public Order ToModel(int id)
 {
     return(new Order()
     {
         ID = id,
         Email = Email,
         Updates = Updates,
         FirstName = FirstName,
         LastName = LastName,
         ShippingMethod = ShippingMethod,
         ShippingPrice = ShippingPrice,
         PaymentMethod = PaymentMethod,
         BillingStreet = BillingStreet,
         BillingApartment = BillingApartment,
         BillingCity = BillingCity,
         BillingCountry = BillingCountry,
         BillingZip = BillingZip,
         ShippingStreet = ShippingStreet,
         ShippingApartment = ShippingApartment,
         ShippingCity = ShippingCity,
         ShippingCountry = ShippingCountry,
         ShippingZip = ShippingZip,
         VAT = VAT,
         OrderProducts = OrderProducts.Select(opf => opf.ToModel()).ToList()
     });
 }
コード例 #2
0
        public async Task ShouldReturnScheduleInputOrderObjectWhenScheduleTypeIsDay()
        {
            _mockDayComparable.Setup(x => x.Compare(It.IsAny <DayOfWeek>())).Returns(true);
            var scheduleOrder = new ScheduleOrder(
                _mockGasStationScheduleRepo.Object
                , _mockGasStationScheduleByDayRepo.Object
                , _mockGasStationTanksScheduleRepo.Object
                , _mockGasStationScheduleByTimeRepo.Object
                , _mockDayComparable.Object
                , _mockTimeIntervalComparable.Object
                , _mockOrderRepository.Object
                );

            var gasStation = _orderData.GasStations.First();
            var result     = await scheduleOrder.CreateAsync((gasStation, _orderData.OrderStrategies.First().OrderType));

            Assert.True(result.IsSuccess);
            var lineItemsTankIds        = result.Entity !.OrderProducts.Select(x => x.TankId).ToList();
            var gasStationScheduleTanks = _orderData.GasStationTankSchedules.Where(x => x.TankId == 1 || x.TankId == 2).ToList();

            _mockDayComparable.Verify(x => x.Compare(It.IsAny <DayOfWeek>()), Times.Once);
            Assert.Equal(OrderType.Schedule, result.Entity !.OrderType);
            Assert.Equal(2, result.Entity !.OrderProducts.Count());
            Assert.True(lineItemsTankIds.Exists(x => x == gasStationScheduleTanks
                                                .FirstOrDefault().TankId));
            Assert.True(lineItemsTankIds.Exists(x => x == gasStationScheduleTanks
                                                .LastOrDefault().TankId));
            Assert.Equal(result.Entity !.OrderProducts.FirstOrDefault(
                             x => x.TankId == gasStationScheduleTanks.FirstOrDefault().TankId)
                         .Quantity, gasStationScheduleTanks.FirstOrDefault().Quantity);
            Assert.Equal(result.Entity !.OrderProducts.FirstOrDefault(
                             x => x.TankId == gasStationScheduleTanks.LastOrDefault().TankId)
                         .Quantity, gasStationScheduleTanks.LastOrDefault().Quantity);
        }