public void SetUp() { _checkSpecialPrice = new CheckSpecialPrice(); _mockProduct = new Mock <IProduct>(); _mockSpecialPrice = new Mock <ISpecialPrice>(); _mockProduct.SetupAllProperties(); _mockSpecialPrice.SetupAllProperties(); _mockSpecialPrice.Object.SpecialPriceID = 1; _mockSpecialPrice.Object.SpecialPriceOffer = 130; _mockSpecialPrice.Object.SpecialPriceQuantity = 3; _mockProduct.Object.ProdID = 1; _mockProduct.Object.ProdName = "A"; _mockProduct.Object.ProdPrice = 50; _mockProduct.Object.SpecialPrice = _mockSpecialPrice.Object; }
static void Main(string[] args) { IList <ISpecialPrice> specialPrices = new List <ISpecialPrice> { new SpecialPrice(2, 2, 45), new SpecialPrice(1, 3, 130), }; IList <Product> products = new List <Product> { new Product(1, "A", 50, specialPrices[1]), new Product(2, "B", 30, specialPrices[0]), new Product(3, "C", 10, null), new Product(4, "D", 20, null), }; ICheckSpecialPrice specialPrice = new CheckSpecialPrice(); ICheckout checkout = new Checkout(specialPrice); checkout.ScanItem(products[1]); checkout.ScanItem(products[1]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[0]); checkout.ScanItem(products[1]); var total = checkout.GetTotalPrice(); Console.WriteLine("TOTAL IS: " + total); }