示例#1
0
        public static void Main(string[] args)
        {
            _promotionEngine.AddPromotionRule(Apply3APromotion);
            _promotionEngine.AddPromotionRule(ApplyBCPromotion);
            _promotionEngine.AddPromotionRule(ApplyCDPromotion);
            //Feel free to add new logic to be executed for promotion
            //_promotionEngine.AddPromotionRule();

            _productCatalog.AddProduct('A', 50);
            _productCatalog.AddProduct('B', 30);
            _productCatalog.AddProduct('C', 20);
            _productCatalog.AddProduct('D', 15);


            Checkout(new[] { 'A', 'B', 'C' });
            Checkout(new[] { 'A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C' });
            Checkout(new[] { 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C', 'D' });
        }