Example #1
0
        public void  CalculatePomotionShouldPassWithGivenCheckoutAmount()
        {
            int CheckoutAmount = 370;
            int QuantityA = 5, QuantityB = 5, QuantityC = 1, QuantityD = 0;
            var pA = mockProductA.Setup(x => x.CalculateAmoutForA(QuantityA)).Returns(230);
            var pB = mockProductB.Setup(x => x.CalculateAmoutForB(QuantityB)).Returns(120);
            var pc = mockProductC.Setup(x => x.CalculateAmoutForC(QuantityC)).Returns(20);
            var pD = mockProductD.Setup(x => x.CalculateAmoutForD(QuantityC)).Returns(0);

            int result = promotion.ApplyPromo(QuantityA, QuantityB, QuantityC, QuantityD);

            Assert.AreEqual(CheckoutAmount, result);
        }