Example #1
0
        public void Add100ItemsToRegisterAndChange1Price100Times()
        {
            // setup
            Register r = new Register();

            for (int i = 0; i < 100; i++)
            {
                var s1 = new SoldLineItem();
                // create a sale item
                s1.ItemID = TestInventoryItem;
                s1.Price = TestPrice * i;
                s1.Quantity = TestQuantity * i;
                s1.Description = TestDescription;

                // trigger
                r.Add(s1);
                s1 = null;
            }

            for (int i = 5; i < 55; i++)
            {
                r.Update(i, 23.4, 3);
            }

            for (int i = 45; i < 60; i++)
            {
                r.DeleteRow(i);
            }

            double subTotal = r.SubTotal();
            // validate
            int registerCount = r.RegisterCount();
            Assert.AreEqual(registerCount, 85, "expected register to have only 85 items");
            Assert.AreEqual(277765.14999999997, subTotal, "expected different subtotal");
        }
Example #2
0
        public void AddOneItemToRegister()
        {
            // setup
            Register r = new Register();
            var s1 = new SoldLineItem();

            // create a sale item
            s1.ItemID = TestInventoryItem;
            s1.Price = TestPrice;
            s1.Quantity = TestQuantity;
            s1.Description = TestDescription;

            // trigger
            r.Add(s1);

            // validate
            int registerCount = r.RegisterCount();
            double extended = s1.Extended;
            double subTotal = r.SubTotal();
            Assert.AreEqual(registerCount, 1, "expected register to have only 1 item");
            Assert.AreEqual(ExpectedSubtotal, subTotal, "expected different subtotal for 1 item");
            Assert.AreEqual(ExpectedExtended, extended, "expected different subtotal for 1 item");
        }
Example #3
0
        public void RemoveFirstItem()
        {
            // setup
            Register r = new Register();

            for (int i = 0; i < 3; i++)
            {
                var s1 = new SoldLineItem();

                // create a sale item
                s1.LineItemID = i;
                s1.ItemID = TestInventoryItem;
                s1.Price = TestPrice;
                s1.Quantity = TestQuantity;
                s1.Description = TestDescription;

                // trigger
                r.Add(s1);
            }

            r.DeleteRow(0);

            Assert.AreEqual(r.RegisterCount(), 2, "expected 2 items");
            Assert.AreEqual(r.Sale[0].LineItemID, 0, "expected first item 0");
            Assert.AreEqual(r.Sale[1].LineItemID, 1, "expected second item 2");
        }
Example #4
0
        public void AddTwoRemoveOneAddAgainUpdateLast()
        {
            // setup
            Register r = new Register();

            for (int i = 0; i < 2; i++)
            {
                var s1 = new SoldLineItem();

                // create a sale item
                s1.LineItemID = i;
                s1.ItemID = TestInventoryItem;
                s1.Price = i;
                s1.Quantity = i;
                s1.Description = TestDescription;

                // trigger
                r.Add(s1);
            }
            int removeIndex = r.RegisterCount();
            r.DeleteRow(removeIndex -1);

            var s2 = new SoldLineItem();

            // create a sale item
            s2.LineItemID = 3;
            s2.ItemID = TestInventoryItem;
            s2.Price = 3;
            s2.Quantity = 3;
            s2.Description = TestDescription;
            r.Add(s2);

            r.Update(2, 5, 5);
            Assert.AreEqual(r.RegisterCount(), 2, "expected 2 items");
            Assert.AreEqual(r.Sale[0].LineItemID, 0, "expected 0 for first");
            Assert.AreEqual(r.Sale[1].LineItemID, 3, "expected 3 for last");
        }
Example #5
0
        public void AddTenItemsToRegister()
        {
            // setup
            Register r = new Register();
            for (int i = 0; i < 10; i++)
            {
                var s1 = new SoldLineItem();

                // create a sale item
                s1.Description = TestDescription;
                s1.ItemID = TestInventoryItem;
                s1.Price = TestPrice;
                s1.Quantity = TestQuantity;

                // trigger
                r.Add(s1);
                s1 = null;
            }

            // validate
            int registerCount = r.RegisterCount();
            double subTotal = r.SubTotal();
            Assert.AreEqual(registerCount, 10, "expected register to have only 10 items");
            Assert.AreEqual(subTotal, 10.1, "expected different subtotal for 10 item");
        }
Example #6
0
        public void AddOneThousandDifferentItemsToRegister()
        {
            // setup
            Register r = new Register();
            for (int i = 0; i < 1000; i++)
            {
                var s1 = new SoldLineItem();

                // create a sale item
                s1.ItemID = TestInventoryItem;
                s1.Price = TestPrice * i;
                s1.Quantity = TestQuantity * i;

                // trigger
                r.Add(s1);
                s1 = null;
            }

            // validate
            int registerCount = r.RegisterCount();
            double subTotal = r.SubTotal();
            Assert.AreEqual(registerCount, 1000, "expected register to have only 10 items");
            Assert.AreEqual(subTotal, 336161835.0, "expected different subtotal for 10 item");
        }