public async Task ThrowsErrorWhenDeletingNonOrderItem()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            await Assert.ThrowsAsync <OrderItemNotFoundException>(async() => await sut.RemoveOrderItemAsync(
                                                                      Guid.NewGuid()));
        }
        public async Task ThrowsErrorWhenUpdatingNonOrderItem()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            await Assert.ThrowsAsync <OrderItemNotFoundException>(async() => await sut.UpdateOrderItemQuantityAsync(
                                                                      Guid.NewGuid(), It.IsAny <int>()));
        }
        public async Task CanDeleteOrderItem()
        {
            int             quantity = _fixture.Create <int>();
            OrderItemAccess sut      = CreateSystemUnderTest();

            await sut.RemoveOrderItemAsync(Guid.Parse("43E4BA9F-5D82-4414-9702-5CA3DEF48168"));
        }
        public async Task ThrowsErrorWhenCreatingOrderItemForNonProduct()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            await Assert.ThrowsAsync <ProductNotFoundException>(async() => await sut.CreateOrderItemAsync(
                                                                    Guid.Parse("51B5CFF8-B2CE-4DE8-AB8A-16B6343E105A"),
                                                                    Guid.NewGuid(), 4));
        }
        public async Task ThrowsErrorWhenCreatingOrderItemForNonOrder()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            await Assert.ThrowsAsync <OrderNotFoundException>(async() => await sut.CreateOrderItemAsync(
                                                                  Guid.NewGuid(),
                                                                  Guid.Parse("C31A24E6-54E7-4644-B62E-C587001ED18F"), 4));
        }
        public void CanGetOrderItem()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            OrderItem orderItem = sut.GetOrderItem(Guid.Parse("BB774E9D-CB0A-41FE-99BD-97780CA49217"));

            Assert.NotNull(orderItem);
        }
        public async Task CanCreateOrderItem()
        {
            OrderItemAccess sut = CreateSystemUnderTest();

            OrderItem orderItem = await sut.CreateOrderItemAsync(Guid.Parse("51B5CFF8-B2CE-4DE8-AB8A-16B6343E105A"),
                                                                 Guid.Parse("C31A24E6-54E7-4644-B62E-C587001ED18F"), 4);

            Assert.NotNull(orderItem);
        }
        public async Task CanUpdateOrderItem()
        {
            int             quantity = _fixture.Create <int>();
            OrderItemAccess sut      = CreateSystemUnderTest();

            OrderItem orderItem =
                await sut.UpdateOrderItemQuantityAsync(Guid.Parse("43E4BA9F-5D82-4414-9702-5CA3DEF48168"), quantity);

            Assert.Equal(quantity, orderItem.Quantity);
        }
Ejemplo n.º 9
0
 /// <summary>
 /// Calls the Access label to insert all the order items
 /// </summary>
 /// <param name="items"></param>
 /// <returns></returns>
 public static bool InsertAllOrderItems(List <int> items)
 {
     try
     {
         foreach (var item in items)
         {
             OrderItem order = new OrderItem
             {
                 OrderId = OrderAccess.GetOrderObjs().Last().Id,
                 DishId  = item
             };
             OrderItemAccess.AddOrderItem(order);
         }
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Ejemplo n.º 10
0
        /// <summary>
        /// All the logical process to show the outputs are here
        /// </summary>
        /// <param name="order"></param>
        /// <returns></returns>
        public static string GetOrderDescriptionFromOrder(OrderObj order)
        {
            bool error = false, keep = true;
            List <Tuple <int, int> > values = new List <Tuple <int, int> >();
            StringBuilder            description = new StringBuilder();
            List <OrderItem>         items = new List <OrderItem>();

            items  = OrderItemAccess.GetOrderItemsByOrder(order.Id);
            values = GetTuples(items);

            foreach (var item in values.Distinct())
            {
                if (keep)
                {
                    switch (order.Time)
                    {
                    case (int)TimeEnum.morning:
                        if (item.Item2 > 1)
                        {
                            if (item.Item1 == (int)MorningEnum.coffee)
                            {
                                description.Append((MorningEnum)Enum.ToObject(typeof(MorningEnum), item.Item1) + "(x" + item.Item2 + "), ");
                            }
                            else if (error)
                            {
                                description.Append((MorningEnum)Enum.ToObject(typeof(MorningEnum), (int)MorningEnum.error) + ", ");
                                keep = false;
                            }
                            else
                            {
                                description.Append((MorningEnum)Enum.ToObject(typeof(MorningEnum), item.Item1) + ", ");
                                description.Append((MorningEnum)Enum.ToObject(typeof(MorningEnum), (int)MorningEnum.error) + ", ");
                                error = true;
                                keep  = false;
                            }
                        }
                        else
                        {
                            description.Append((MorningEnum)Enum.ToObject(typeof(MorningEnum), item.Item1) + ", ");
                        }
                        break;

                    case (int)TimeEnum.night:
                        if (item.Item2 > 1)
                        {
                            if (item.Item1 == (int)NightEnum.potato)
                            {
                                description.Append((NightEnum)Enum.ToObject(typeof(NightEnum), item.Item1) + "(x" + item.Item2 + "), ");
                            }
                            else if (error)
                            {
                                description.Append((NightEnum)Enum.ToObject(typeof(NightEnum), (int)NightEnum.error) + ", ");
                                keep = false;
                            }
                            else
                            {
                                description.Append((NightEnum)Enum.ToObject(typeof(NightEnum), item.Item1) + ", ");
                                description.Append((NightEnum)Enum.ToObject(typeof(NightEnum), (int)NightEnum.error) + ", ");
                                error = true;
                                keep  = false;
                            }
                        }
                        else
                        {
                            description.Append((NightEnum)Enum.ToObject(typeof(NightEnum), item.Item1) + ", ");
                        }
                        break;
                    }
                }
            }

            return(description.ToString().Remove(description.ToString().Length - 2, 2));
        }