Esempio n. 1
0
        public void Setup()
        {
            inMemoryConnection = Effort.DbConnectionFactory.CreateTransient();
            using var context  = new MarketDbContext(inMemoryConnection);
            context.Init();
            RegisteredUser first_owner = new RegisteredUser("FIRST_OWNER", new byte[] { });

            context.Users.Add(first_owner);
            TEST_FIRST_OWNER = first_owner.ID;
            RegisteredUser owner = new RegisteredUser("OWNER", new byte[] { });

            context.Users.Add(owner);
            TEST_OWNER = owner.ID;
            RegisteredUser manager = new RegisteredUser("MANAGER", new byte[] { });

            context.Users.Add(manager);
            TEST_MANAGER = manager.ID;
            RegisteredUser new_user = new RegisteredUser("NEW_USER", new byte[] { });

            context.Users.Add(new_user);
            TEST_NEW_USER   = new_user.ID;
            storeName       = DataForTests.CreateTestContactDetails().Name;
            storeHandler    = new StoreHandler();
            orderManager    = new OrderManager(storeHandler, inMemoryConnection);
            storeManagement = new StoreManagementFacade(storeHandler, orderManager);
            storeHandler.OpenStore(DataForTests.CreateTestContactDetails(), TEST_FIRST_OWNER, context);
            Store store = storeHandler.GetStoreByName(storeName, context);

            store.AddOwner(TEST_OWNER, TEST_FIRST_OWNER, STUB_USER_NAME, storeHandler, context);
            store.AddManager(TEST_MANAGER, TEST_OWNER, context);
            item    = store.AddItem("existing", 2, categories1, 3.55, context);
            itemID  = item.Id;
            storeID = store.Id;
        }
Esempio n. 2
0
 public OrderManager(StoreHandler storeHandler, Effort.Provider.EffortConnection inMemoryConnection)
 {
     //Orders = new BlockingCollection<Order>();
     //usersOrders = new Dictionary<Guid, List<Order>>();
     //storesOrders = new Dictionary<Guid, List<StoreOrder>>();
     //pendingOrders = new Dictionary<Guid, Order>();
     StoreHandler = storeHandler;
     observers    = new HashSet <NotificationObserver>();
     this.IDForNotifactionSubject = Guid.NewGuid();
     Payment  = new PaymentProxy();
     Delivery = new DeliveryProxy();
     if (inMemoryConnection != null)
     {
         this.useInMemoryDB      = true;
         this.inMemoryConnection = inMemoryConnection;
     }
     else
     {
         this.useInMemoryDB = false;
     }
     Timer = new Timer
     {
         Interval = 1000 * 60 * 2
     };
     Timer.Enabled  = true;
     Timer.Elapsed += new ElapsedEventHandler(ReviewPendings);
 }