Esempio n. 1
0
        public void AddOrderMealSholudAddMealToOrder()
        {
            //arrange
            var orderedMealPoco = new OrderedMealPoco
            {
                Count         = 1,
                MealName      = "special meal name",
                OrderId       = 3,
                Price         = 15.56,
                PurchaserName = "purchaser name"
            };

            _mealMapper
            .Setup(m => m.MapToPoco(It.IsAny <OrderedMeal>()))
            .Returns(orderedMealPoco);

            //act
            _repo.AddOrderedMeal(new OrderedMeal());

            //assert
            _mealMapper.Verify(m => m.MapToPoco(It.IsAny <OrderedMeal>()),
                               Times.Once);
            var orderFromDb = GetOrderPocoFromDbById(3);
            var orderedMeal = orderFromDb.OrderedMeals
                              .FirstOrDefault(om => om.MealName == orderedMealPoco.MealName);

            Assert.NotNull(orderFromDb);
        }
Esempio n. 2
0
        public void OrderedMealPocoShouldBeMappedToOrderedMeal()
        {
            //Arrange
            var orderedMealPoco = new OrderedMealPoco
            {
                Count         = 6,
                MealName      = "meal name",
                OrderId       = 145,
                Id            = 1765,
                Price         = 234.67,
                PurchaserName = "purchaser name"
            };

            //Act
            var mappedOrderedMeal = _orderdedMealMapper.MapToDomain(orderedMealPoco);

            //Assert
            Assert.Equal(mappedOrderedMeal.Id, mappedOrderedMeal.Id);
            Assert.Equal(mappedOrderedMeal.MealName, mappedOrderedMeal.MealName);
            Assert.Equal(mappedOrderedMeal.Count, mappedOrderedMeal.Count);
            Assert.Equal(mappedOrderedMeal.OrderId, mappedOrderedMeal.OrderId);
            Assert.Equal(mappedOrderedMeal.Price, mappedOrderedMeal.Price);
            Assert.Equal(mappedOrderedMeal.PurchaserName, mappedOrderedMeal.PurchaserName);
            Assert.IsType <OrderedMeal>(mappedOrderedMeal);
        }
Esempio n. 3
0
        public OrderPoco MapIt(OrderPoco order, OrderedMealPoco orderedMeal, StatusPoco status, RestaurantPoco restaurant)
        {
            // Terminating call.  Since we can return null from this function
            // we need to be ready for PetaPoco to callback later with null
            // parameters
            if (order == null)
            {
                return(_currentOrder);
            }

            // Is this the same author as the current one we're processing
            if (_currentOrder != null && _currentOrder.Id == order.Id)
            {
                // Yes, just add this post to the current author's collection of posts
                _currentOrder.OrderedMeals.Add(orderedMeal);

                // Return null to indicate we're not done with this author yet
                return(null);
            }


            // This is a different author to the current one, or this is the
            // first time through and we don't have an author yet

            // Save the current author
            var previousOrder = _currentOrder;

            // Setup the new current author
            _currentOrder = order;
            _currentOrder.OrderedMeals = new List <OrderedMealPoco>();
            if (orderedMeal.OrderId == order.Id)
            {
                _currentOrder.OrderedMeals.Add(orderedMeal);
            }
            if (status.Id == order.StatusId)
            {
                _currentOrder.Status = status;
            }
            if (restaurant.ID == order.RestaurantId)
            {
                _currentOrder.Restaurant = restaurant;
            }
            // Return the now populated previous author (or null if first time through)
            return(previousOrder);
        }