コード例 #1
0
        public async Task ReferenceCalculation()
        {
            using (var context = new ProductHierarchyContext())
            {
                var ppc   = new ProductPriceCalculator();
                var costs = await ppc.CalculateProductPriceAsync(context);

                Assert.AreEqual(40240.31m, costs);
            }
        }
コード例 #2
0
ファイル: App.cs プロジェクト: mennan/campaign-manager
        public App(IProductService productService, ICampaignService campaignService, IOrderService orderService,
                   ITimeService timeService)
        {
            _productService  = productService;
            _campaignService = campaignService;
            _orderService    = orderService;
            _timeService     = timeService;

            priceCalculatorModel = new PriceCalculatorModel
            {
                ProductService  = _productService,
                CampaignService = _campaignService,
                OrderService    = _orderService
            };

            var productPriceCalculator =
                new ProductPriceCalculator(priceCalculatorModel);

            _productService.OnProductCreated   += s => priceCalculatorModel.ProductCode = s;
            _campaignService.OnCampaignCreated += s => priceCalculatorModel.CampaignCode = s;
            _timeService.OnTimeIncreased       += productPriceCalculator.Calculate;
        }
コード例 #3
0
        public ScenarioFixtures()
        {
            var uow = new MemoryUnitOfWork();

            ProductService  = new ProductService(uow);
            TimeService     = new TimeService();
            CampaignService = new CampaignService(uow, TimeService);
            OrderService    = new OrderService(uow);

            var priceCalculatorModel = new PriceCalculatorModel
            {
                ProductService  = ProductService,
                CampaignService = CampaignService,
                OrderService    = OrderService
            };

            var productPriceCalculator = new ProductPriceCalculator(priceCalculatorModel);

            ProductService.OnProductCreated   += s => priceCalculatorModel.ProductCode = s;
            CampaignService.OnCampaignCreated += s => priceCalculatorModel.CampaignCode = s;
            TimeService.OnTimeIncreased       += productPriceCalculator.Calculate;
        }