Ejemplo n.º 1
0
        public void VegetableTrayTakeOutExceptionTest()
        {
            VegetableTray vegetableTray = new VegetableTray();
            Tomato        tomato        = new Tomato();
            Cabbage       cabbage       = new Cabbage();
            LadyFinger    ladyFinger    = new LadyFinger();

            vegetableTray.Add(tomato, 25);

            var actualVegetableQuantity = vegetableTray.GetVegetableQuantity();

            Assert.Throws <VegetableNotFoundException>(() => vegetableTray.TakeOut(cabbage, 20));
        }
Ejemplo n.º 2
0
        public void VegetableTrayTakeOutPositiveTest()
        {
            VegetableTray vegetableTray = new VegetableTray();
            Tomato        tomato        = new Tomato();
            Cabbage       cabbage       = new Cabbage();
            LadyFinger    ladyFinger    = new LadyFinger();

            vegetableTray.Add(tomato, 25);
            vegetableTray.TakeOut(tomato, 20);

            var actualVegetableQuantity = vegetableTray.GetVegetableQuantity();

            var expectedVegetableQuantity = new List <KeyValuePair <Vegetable, int> >();

            expectedVegetableQuantity.Add(new KeyValuePair <Vegetable, int>(tomato, 5));

            Assert.Equal(expectedVegetableQuantity, actualVegetableQuantity);
        }
        public void AddVegetableToEmptyTrayTest()
        {
            var tray = new VegetableTray();

            tray.Add(new Tomato(), 8000);
            tray.Add(new Cabbage(), 5000);

            List <KeyValuePair <Vegetable, int> > cartItems = new List <KeyValuePair <Vegetable, int> >()
            {
                new KeyValuePair <Vegetable, int>(new Tomato(), 8000),
                new KeyValuePair <Vegetable, int>(new Cabbage(), 5000)
            };

            var trayVegetables = tray.GetVegetableQuantity();

            for (int i = 0; i < cartItems.Count; i++)
            {
                Assert.Equal(cartItems[i].Value, trayVegetables[i].Value);
            }
        }
        public void PlaceOrder()
        {
            Tomato  tomato  = new Tomato();
            Cabbage cabbage = new Cabbage();

            VegetableTray tray = new VegetableTray();

            tray.Add(tomato, 5000);
            tray.Add(cabbage, 4000);


            IStorage storage = new InMemoryStorage();

            ConfigurationManager configurationManager = new ConfigurationManager(storage);

            configurationManager.SetMinimumQuantity(tomato, 2000);
            configurationManager.SetMinimumQuantity(cabbage, 2000);

            tray.TakeOut(tomato, 4000);

            VegetableTracker vegetableTracker = new VegetableTracker(configurationManager, tray);
            var insufficientVegetables        = vegetableTracker.GetInsufficientVegetableQuantity();

            Order order = new Order(vegetableTracker, configurationManager, tray);

            order.PlaceOrder();

            List <KeyValuePair <Vegetable, int> > cartItems = new List <KeyValuePair <Vegetable, int> >()
            {
                new KeyValuePair <Vegetable, int>(new Tomato(), 2000),
                new KeyValuePair <Vegetable, int>(new Cabbage(), 4000)
            };

            var trayVegetables = tray.GetVegetableQuantity();

            for (int i = 0; i < cartItems.Count; i++)
            {
                Assert.Equal(cartItems[i].Value, trayVegetables[i].Value);
            }
        }
        public void TakeOutVegetableFromTray()
        {
            var     tray    = new VegetableTray();
            Tomato  tomato  = new Tomato();
            Cabbage cabbage = new Cabbage();

            tray.Add(tomato, 8000);
            tray.Add(cabbage, 5000);
            tray.TakeOut(tomato, 2000);
            tray.TakeOut(cabbage, 2000);

            var trayVegetables = tray.GetVegetableQuantity();

            List <KeyValuePair <Vegetable, int> > cartItems = new List <KeyValuePair <Vegetable, int> >()
            {
                new KeyValuePair <Vegetable, int>(new Tomato(), 6000),
                new KeyValuePair <Vegetable, int>(new Cabbage(), 3000)
            };

            for (int i = 0; i < cartItems.Count; i++)
            {
                Assert.Equal(cartItems[i].Value, trayVegetables[i].Value);
            }
        }
Ejemplo n.º 6
0
        public void TakeOutVegetable(Vegetable vegetable, int quantity)
        {
            _vegetableTray.TakeOut(vegetable, quantity);

            var vegetableQuantity = _vegetableTray.GetVegetableQuantity();
        }
 public void AddVegetableToEmptyTrayTest()
 {
     tray.Add(cabbage, 2);
     tray.Add(tomato, 5);
     Assert.AreEqual(2, tray.GetVegetableQuantity().Count);
 }