Esempio n. 1
0
        public void Calculate_Cart_Total()
        {
            // Организация - создание нескольких тестовых игр
            GoodsLine goods1 = new GoodsLine();

            goods1.GoodsId    = 1;
            goods1.GoodsName  = "Товар 1";
            goods1.GoodsPrice = 100;
            GoodsLine goods2 = new GoodsLine();

            goods2.GoodsId    = 2;
            goods2.GoodsName  = "Товар 2";
            goods2.GoodsPrice = 55;
            // Организация - создание корзины
            Cart cart = new Cart();

            // Действие
            cart.AddItem(1, goods1, 1);
            cart.AddItem(2, goods2, 1);
            cart.AddItem(3, goods1, 5);
            decimal result = cart.ComputeTotalValue();

            // Утверждение
            Assert.AreEqual(result, 655);
        }
Esempio n. 2
0
        public void Can_Remove_Line()
        {
            // Организация - создание нескольких тестовых игр
            GoodsLine goods1 = new GoodsLine();

            goods1.GoodsId   = 1;
            goods1.GoodsName = "Товар 1";
            GoodsLine goods2 = new GoodsLine();

            goods2.GoodsId   = 2;
            goods2.GoodsName = "Товар 2";
            GoodsLine goods3 = new GoodsLine();

            goods3.GoodsId   = 3;
            goods3.GoodsName = "Товар 3";

            // Организация - создание корзины
            Cart cart = new Cart();

            // Организация - добавление нескольких игр в корзину
            cart.AddItem(1, goods1, 1);
            cart.AddItem(2, goods2, 4);
            cart.AddItem(3, goods3, 2);
            cart.AddItem(4, goods2, 1);

            // Действие
            cart.RemoveLine(goods2);

            // Утверждение
            Assert.AreEqual(cart.Lines.Where(c => c.Goods == goods2).Count(), 0);
            Assert.AreEqual(cart.Lines.Count(), 2);
        }
Esempio n. 3
0
        public void Can_Remove_Goods()
        {
            Goods goods = new Goods();

            // Действие
            goods.AddItem();
            goods.AddItem();
            goods.AddItem();

            GoodsLine g = goods.Lines.ElementAt(1);

            goods.RemoveLine(g);
            List <GoodsLine> results = goods.Lines.ToList();

            // Утверждение
            Assert.AreEqual(goods.Lines.Where(c => c == g).Count(), 0);
            Assert.AreEqual(goods.Lines.Count(), 2);
            Assert.AreEqual(results[0].GoodsId, 1);
            Assert.AreEqual(results[1].GoodsId, 3);
        }
Esempio n. 4
0
        public void Can_Add_New_Lines()
        {
            GoodsLine goods1 = new GoodsLine();

            goods1.GoodsId   = 1;
            goods1.GoodsName = "Товар 1";
            GoodsLine goods2 = new GoodsLine();

            goods2.GoodsId   = 2;
            goods2.GoodsName = "Товар 2";
            // Организация - создание корзины
            Cart cart = new Cart();

            // Действие
            cart.AddItem(1, goods1, 1);
            cart.AddItem(2, goods2, 1);
            List <CartLine> results = cart.Lines.ToList();

            // Утверждение
            Assert.AreEqual(results.Count(), 2);
            Assert.AreEqual(results[0].Goods, goods1);
            Assert.AreEqual(results[1].Goods, goods2);
        }
Esempio n. 5
0
        public void Can_Add_Quantity_For_Existing_Lines()
        {
            GoodsLine goods1 = new GoodsLine();

            goods1.GoodsId   = 1;
            goods1.GoodsName = "Товар 1";
            GoodsLine goods2 = new GoodsLine();

            goods2.GoodsId   = 2;
            goods2.GoodsName = "Товар 2";
            // Организация - создание корзины
            Cart cart = new Cart();

            // Действие
            cart.AddItem(1, goods1, 1);
            cart.AddItem(2, goods2, 1);
            cart.AddItem(3, goods1, 5);
            List <CartLine> results = cart.Lines.ToList();

            // Утверждение
            Assert.AreEqual(results.Count(), 2);
            Assert.AreEqual(results[0].Quantity, 6);    // 6 экземпляров добавлено в корзину
            Assert.AreEqual(results[1].Quantity, 1);
        }
Esempio n. 6
0
        public void Can_Clear_Contents()
        {
            GoodsLine goods1 = new GoodsLine();

            goods1.GoodsId    = 1;
            goods1.GoodsName  = "Товар 1";
            goods1.GoodsPrice = 100;
            GoodsLine goods2 = new GoodsLine();

            goods2.GoodsId    = 2;
            goods2.GoodsName  = "Товар 2";
            goods2.GoodsPrice = 55;
            // Организация - создание корзины
            Cart cart = new Cart();

            // Действие
            cart.AddItem(1, goods1, 1);
            cart.AddItem(2, goods2, 1);
            cart.AddItem(3, goods1, 5);
            cart.Clear();

            // Утверждение
            Assert.AreEqual(cart.Lines.Count(), 0);
        }