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; }
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; }