public OrderService(bool useDataFiller)
 {
     if (useDataFiller)
     {
         DataContext dataContext = new DataContext();
         IDataFiller dataFiller  = new DataFactory();
         dataFiller.Fill(dataContext);
         IdGenerator.ClientNum = dataContext.Customers.Count + 1;
         IdGenerator.OrderNum  = dataContext.Orders.Count + 1;
         CustomerRepository    customerRepository    = new CustomerRepository(dataContext);
         MerchandiseRepository merchandiseRepository = new MerchandiseRepository(dataContext);
         OrderRepository       orderRepository       = new OrderRepository(dataContext);
         ICustomerService      customerService       = new CustomerService(customerRepository);
         IMerchandiseService   merchandiseService    = new MerchandiseService(merchandiseRepository);
         _orderRepository    = orderRepository;
         _customerService    = customerService;
         _merchandiseService = merchandiseService;
         _provider           = new DiscountCreator(_merchandiseService);
     }
     else
     {
         _customerService    = new CustomerService();
         _merchandiseService = new MerchandiseService();
         _orderRepository    = new OrderRepository();
     }
     _cyclicDiscountService = new CyclicDiscountService(0.3, TimeSpan.FromSeconds(20), _provider);
     _cyclicDiscountService.Start();
 }
 public void InitTest()
 {
     dataContext = new DataContext {
         Merchandises = new Dictionary <string, Merchandise>()
     };
     MerchandiseRepository = new MerchandiseRepository(dataContext);
 }
예제 #3
0
 public void TestGetValueForAmulet()
 {
     Assert.AreEqual(20.0, MerchandiseRepository.GetValueOfMerchandise(a11));
     Assert.AreEqual(27.5, MerchandiseRepository.GetValueOfMerchandise(a12));
     Assert.AreEqual(12.5, MerchandiseRepository.GetValueOfMerchandise(a13));
 }
예제 #4
0
 public void TestGetValueForBook()
 {
     Assert.AreEqual(0.0, MerchandiseRepository.GetValueOfMerchandise(b1));
     Assert.AreEqual(0.0, MerchandiseRepository.GetValueOfMerchandise(b2));
     Assert.AreEqual(123.55, MerchandiseRepository.GetValueOfMerchandise(b3));
 }