コード例 #1
0
        public BasketProviderTests()
        {
            MockLogger     = new Mock <ILogger <BasketProvider> >();
            BasketProvider = new BasketProvider(MockLogger.Object);
            TransactionId  = Guid.NewGuid();

            Products = new List <Product> {
                new Product {
                    ProductName = "Apples"
                },
                new Product {
                    ProductName = "Milk"
                },
                new Product {
                    ProductName = "Bread"
                }
            };
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: SN-patel/invoicing
        static void Main(string[] args)
        {
            var filePath = @"E:\Talentica\invoice\file\invoice_typeA.txt";

            //below three lines can be handled using dependency injection
            IBasketItemParser   parser             = new TypeABasketItemParser();
            IBasketItemProvider basketItemProvider = new BasketItemProvider(parser);
            IBasketProvider     basketProvider     = new BasketProvider(basketItemProvider);

            var basket = basketProvider.GetBasket(filePath);

            IPricingEngine engine = new PricingEngine();

            basket = engine.UpdateBasketWithPrice(basket);

            IInvoicePrinter printer = new InvoicePrinter();

            printer.Print(basket);

            Console.WriteLine(basket.BasketItems.First().Name);
        }