示例#1
0
 public void BuildInitialize()
 {
     MarketDB.Instance.InsertByForce();
     market       = MarketYard.Instance;
     userService  = market.GetUserService();
     storeService = market.GetStoreShoppingService(ref userService);
 }
示例#2
0
        public void IntegrationFeedTestsBuilder()
        {
            var marketDbMocker = new Mock <IMarketBackUpDB>();

            MarketException.SetDB(marketDbMocker.Object);
            MarketLog.SetDB(marketDbMocker.Object);
            countMessagesToServer = 0;
            serverMocker          = new Mock <IListener>();
            serverMocker.Setup(x => x.GetMessage(buyerId2.ToString(), "You have won the lottery on " + productLottery + " in "
                                                 + storeLottery + "!")).Callback(SendMessageToServer);
            serverMocker.Setup(x => x.GetMessage(buyerId1.ToString(), "You have lost the lottery on " + productLottery + " in "
                                                 + storeLottery + "...")).Callback(SendMessageToServer);
            serverMocker.Setup(x => x.GetMessage(buyerId3.ToString(), "You have lost the lottery on " + productLottery + " in "
                                                 + storeLottery + "...")).Callback(SendMessageToServer);
            MarketDB.Instance.InsertByForce();
            var marketSession = MarketYard.Instance;
            var userService1  = marketSession.GetUserService();

            orderService1 = (OrderService)marketSession.GetOrderService(ref userService1);
            orderService1.LoginBuyer("Ryder", "123");
            var userService2 = marketSession.GetUserService();

            orderService2 = (OrderService)marketSession.GetOrderService(ref userService2);
            orderService2.LoginBuyer("Vadim Chernov", "123");
            var userService3 = marketSession.GetUserService();

            orderService3 = (OrderService)marketSession.GetOrderService(ref userService3);
            orderService3.LoginBuyer("Vova", "123");
            MarketYard.SetDateTime(new DateTime(2018, 4, 14));
        }
示例#3
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession      = MarketYard.Instance;
     userServiceSession = marketSession.GetUserService();
     marketSession.GetStorePolicyManager().SyncWithDB();
 }
示例#4
0
 public void BuildStore()
 {
     MarketDB.Instance.InsertByForce();
     market      = MarketYard.Instance;
     handler     = StoreDL.Instance;
     userService = market.GetUserService();
 }
示例#5
0
 public void LotteryCancelationRefund()
 {
     MakeRegisteredShoppers();
     Assert.AreEqual((int)OrderStatus.Success, _orderBridge1.BuyLotteryTicket("Fanta", storeName, 1, 4).Status);
     Assert.AreEqual((int)OrderStatus.Success, _orderBridge2.BuyLotteryTicket("Fanta", storeName, 1, 4).Status);
     MarketYard.SetDateTime(Convert.ToDateTime("01/01/2019"));
     string[] expectedHistoryFirstBuyer =
     {
         "User: Shalom1 Product: Fanta Store: LotteryStore Sale: Lottery Quantity: 1 Price: 4 Date: " + DateTime.Now.Date.ToString("dd/MM/yyyy"),
         "User: Shalom1 Product: REFUND: Lottery Ticket Store: --- Sale: Lottery Quantity: 1 Price: -4 Date: " + DateTime.Now.Date.ToString("dd/MM/yyyy")
     };
     string[] expectedHistorySecondBuyer =
     {
         "User: Shalom2 Product: Fanta Store: LotteryStore Sale: Lottery Quantity: 1 Price: 4 Date: " + DateTime.Now.Date.ToString("dd/MM/yyyy"),
         "User: Shalom2 Product: REFUND: Lottery Ticket Store: --- Sale: Lottery Quantity: 1 Price: -4 Date: " + DateTime.Now.Date.ToString("dd/MM/yyyy")
     };
     string[] actualHistoryFirstBuyer  = _adminBridge.ViewPurchaseHistoryByUser("Shalom1").ReportList;
     string[] actualHistorySecondBuyer = _adminBridge.ViewPurchaseHistoryByUser("Shalom2").ReportList;
     string[] actualHistoryThirdBuyer  = _adminBridge.ViewPurchaseHistoryByUser("Shalom3").ReportList;
     Assert.AreEqual(actualHistoryFirstBuyer.Length, actualHistoryFirstBuyer.Length);
     Assert.AreEqual(expectedHistorySecondBuyer.Length, actualHistorySecondBuyer.Length);
     Assert.IsNull(actualHistoryThirdBuyer);
     for (int i = 0; i < expectedHistoryFirstBuyer.Length; i++)
     {
         Assert.AreEqual(expectedHistoryFirstBuyer[i], actualHistoryFirstBuyer[i]);
         Assert.AreEqual(expectedHistorySecondBuyer[i], actualHistorySecondBuyer[i]);
     }
 }
示例#6
0
 public void BuildWalleter()
 {
     MarketDB.Instance.InsertByForce();
     market         = MarketYard.Instance;
     paymentService = (PaymentService)market.GetPaymentService();
     paymentService.FixExternal();
 }
示例#7
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession = MarketYard.Instance;
     userServiceSession = (UserService) marketSession.GetUserService();
     userServiceSession2 = null;
 }
 public void MarketBuilder()
 {
     marketSession      = MarketYard.Instance;
     userServiceSession = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     orderSyncherHarmony = new OrderSyncherHarmony();
 }
示例#9
0
 public void BuildStore()
 {
     MarketDB.Instance.InsertByForce();
     market      = MarketYard.Instance;
     userService = market.GetUserService();
     MarketYard.SetDateTime(new DateTime(2018, 4, 14));
 }
示例#10
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession       = MarketYard.Instance;
     userServiceSession  = (UserService)marketSession.GetUserService();
     userShopperHarmony  = new UserShopperHarmony(ref userServiceSession);
     storeServiceSession = (StoreShoppingService)marketSession.GetStoreShoppingService(ref userServiceSession);
 }
示例#11
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession = MarketYard.Instance;
     DoSignUp(promoteName, "no-where", promotePassword, "12345678");
     userServiceSignInSession  = null;
     userServiceSignInSession2 = null;
 }
示例#12
0
 public void BuildStore()
 {
     MarketDB.Instance.InsertByForce();
     market       = MarketYard.Instance;
     userService  = market.GetUserService();
     userService2 = market.GetUserService();
     MarketYard.SetDateTime(DateTime.Parse("14/04/2018"));
 }
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession      = MarketYard.Instance;
     userServiceSession = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     userSellerHarmony = new UserSellerHarmony(ref userServiceSession, store);
 }
示例#14
0
        public void AddDiscountAndDontReceiveItBecauseDatePassed()
        {
            //check there is no discount for ouch
            CheckNoDiscountAdded();

            MarketAnswer res = _storeManagementBridge.AddDiscountToProduct("Ouch", Convert.ToDateTime("14/04/2018"), Convert.ToDateTime("15/04/2018"), 10, "HIDDEN", false);

            Assert.AreEqual((int)DiscountStatus.Success, res.Status);
            string coupon = res.ReportList[0];

            MarketYard.SetDateTime(Convert.ToDateTime("16/04/2018"));

            //check the discount was added to the product in the stock
            MarketAnswer stock = _storeShoppingBridge.ViewStoreStock("Toy");

            string[] receivedStock = stock.ReportList;
            string[] expectedStock =
            {
                " name: Ouch base price: 30 description: Ouchouch Discount: {type is: hidden} Purchase Way: Immediate Quantity: 6"
            };
            Assert.AreEqual(expectedStock.Length, receivedStock.Length);
            for (int i = 0; i < receivedStock.Length; i++)
            {
                Assert.AreEqual(expectedStock[i], receivedStock[i]);
            }

            SignUp(ref _userBuyer, "Vika", "Arad", "5555", "55555555");

            _storeShoppingBridge2 = StoreShoppingDriver.getBridge();
            _storeShoppingBridge2.GetStoreShoppingService(_userBuyer.GetUserSession());
            _storeShoppingBridge2.AddProductToCart("Toy", "Ouch", 3);

            //make sure the price in the cart is the original price
            MarketAnswer cartDetails = _userBuyer.ViewCart();

            string[] receivedItems = cartDetails.ReportList;
            string[] expectedItems =
            {
                "Name : Ouch Store : Toy Quantity : 3 Unit Price : 30 Final Price : 90",
            };
            Assert.AreEqual(expectedItems.Length, receivedItems.Length);
            for (int i = 0; i < receivedItems.Length; i++)
            {
                Assert.AreEqual(expectedItems[i], receivedItems[i]);
            }


            CreateOrderWithCouponInvalidCoupon(coupon);

            SignInAdmin("Arik1", "123");
            _userAdminBridge = AdminDriver.getBridge();
            _userAdminBridge.GetAdminService(_userAdmin.GetUserSession());
            MarketAnswer purchaseHistory = _userAdminBridge.ViewPurchaseHistoryByUser("Vika");

            //make sure the purchase didn't complete
            string[] purchaseReceived = purchaseHistory.ReportList;
            Assert.IsNull(purchaseReceived);
        }
示例#15
0
        private void ToCancelLottery()
        {
            var answer = orderService1.BuyLotteryTicket(productLottery, storeLottery, 1, 6);

            Assert.AreEqual(0, answer.Status);
            answer = orderService2.BuyLotteryTicket(productLottery, storeLottery, 1, 6);
            Assert.AreEqual(0, answer.Status);
            MarketYard.SetDateTime(Convert.ToDateTime("01/01/2019"));
        }
示例#16
0
 public void MarketBuilder()
 {
     MarketException.SetDB(MarketBackUpDB.Instance);
     MarketBackUpDB.Instance.CleanByForce();
     MarketDB.Instance.InsertByForce();
     marketSession      = MarketYard.Instance;
     userServiceSession = marketSession.GetUserService();
     userServiceSession.EnterSystem();
 }
示例#17
0
 public void MarketBuilder()
 {
     MarketLog.SetDB(MarketBackUpDB.Instance);
     MarketBackUpDB.Instance.CleanByForce();
     MarketDB.Instance.InsertByForce();
     marketSession      = MarketYard.Instance;
     userServiceSession = marketSession.GetUserService();
     userServiceSession.EnterSystem();
     userServiceSession.SignIn("Arik1", "123");
 }
示例#18
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession      = MarketYard.Instance;
     userServiceSession = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     orderServiceSession = (OrderService)marketSession.GetOrderService(ref userServiceSession);
     storeServiceSession = StockSyncher.Instance;
     storeSyncherHarmony = new StoresSyncherHarmony();
 }
示例#19
0
 public void BuildSupplyPoint()
 {
     MarketDB.Instance.InsertByForce();
     market        = MarketYard.Instance;
     item1         = new OrderItem("Cluckin Bell", null, "#9", 5.00, 2);
     item2         = new OrderItem("Cluckin Bell", null, "#9 Large", 7.00, 1);
     item3         = new OrderItem("Cluckin Bell", null, "#6 Extra Dip", 8.50, 1);
     supplyService = (SupplyService)market.GetSupplyService();
     supplyService.FixExternal();
 }
示例#20
0
 public void BuildInitialize()
 {
     MarketDB.Instance.InsertByForce();
     market      = MarketYard.Instance;
     userService = market.GetUserService();
     userService.EnterSystem();
     storeService = market.GetStoreShoppingService(ref userService);
     p1           = " name: BOX base price: 100 description: this is a plastic box Discount: {type is: hidden} Purchase Way: Immediate Quantity: 5 Store: X";
     p2           = " name: Fraid Egg base price: 10 description: yami Discount: {none} Purchase Way: Immediate Quantity: 10 Store: T";
 }
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession       = MarketYard.Instance;
     userServiceSession  = (UserService)marketSession.GetUserService();
     userServiceSession2 = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     userServiceSession2.EnterSystem();
     orderServiceSession = (OrderService)marketSession.GetOrderService(ref userServiceSession);
     userBuyerHarmony    = new UserBuyerHarmony(ref userServiceSession);
 }
示例#22
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession           = MarketYard.Instance;
     userServiceGuestSession = (UserService)marketSession.GetUserService();
     userServiceGuestSession.EnterSystem();
     userServiceRegisteredSession = null;
     expected = new List <CartItem>();
     item1    = new CartItem("Health Potion", null, "X", 1, 5.0);
     item2    = new CartItem("Health Potion", null, "Y", 2, 0.5);
 }
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession       = MarketYard.Instance;
     userServiceSession  = (UserService)marketSession.GetUserService();
     userServiceSession2 = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     userServiceSession2.EnterSystem();
     storeServiceSession =
         (StoreManagementService)marketSession.GetStoreManagementService(userServiceSession, store);
 }
示例#24
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession        = MarketYard.Instance;
     userServiceSession   = (UserService)marketSession.GetUserService();
     userAdminHarmony     = null;
     adminServiceSession  = null;
     deletedUserSession   = null;
     deletedUserSession2  = null;
     storeShoppingService = null;
     orderService         = null;
 }
示例#25
0
 public void BuildStore()
 {
     MarketDB.Instance.InsertByForce();
     marketSession = MarketYard.Instance;
     userService   = marketSession.GetUserService();
     userService.EnterSystem();
     expectedT = new List <string>
     {
         "Store: T Promoter: Arik1 Promoted: Arik1 Permissions: StoreOwner Date: 01/01/2018 Description: T has been opened",
         "Store: T Promoter: Arik1 Promoted: CJ Permissions: StoreOwner Date: 01/01/2018 Description: Regular promotion"
     };
 }
示例#26
0
        public void AddDiscountAndDontReceiveItBecauseDatePassed()
        {
            //check there is no discount for ouch
            CheckNoDiscountAdded();

            MarketAnswer res = _storeManagementBridge.AddDiscountToProduct("Ouch", Convert.ToDateTime("14/04/2018"), Convert.ToDateTime("15/04/2018"), 10, "VISIBLE", false);

            Assert.AreEqual((int)DiscountStatus.Success, res.Status);

            MarketYard.SetDateTime(Convert.ToDateTime("16/04/2018"));

            //check the discount was added to the product in the stock
            MarketAnswer stock = _storeShoppingBridge.ViewStoreStock("Toy");

            string[] receivedStock = stock.ReportList;
            string[] expectedStock =
            {
                " name: Ouch base price: 30 description: Ouchouch Discount: {DiscountAmount: 10 Start Date: " + Convert.ToDateTime("14/04/2018").Date.ToString("d") + "" +
                " End Date: " + Convert.ToDateTime("15/04/2018").Date.ToString("d") + " type is: visible} Purchase Way: Immediate Quantity: 6"
            };
            Assert.AreEqual(expectedStock.Length, receivedStock.Length);
            for (int i = 0; i < receivedStock.Length; i++)
            {
                Assert.AreEqual(expectedStock[i], receivedStock[i]);
            }

            SignUp(ref _userBuyer, "Vika", "Arad", "5555", "55555555");

            _storeShoppingBridge2 = StoreShoppingDriver.getBridge();
            _storeShoppingBridge2.GetStoreShoppingService(_userBuyer.GetUserSession());
            _storeShoppingBridge2.AddProductToCart("Toy", "Ouch", 3);

            CreateOrder();

            SignInAdmin("Arik1", "123");
            _userAdminBridge = AdminDriver.getBridge();
            _userAdminBridge.GetAdminService(_userAdmin.GetUserSession());
            MarketAnswer purchaseHistory = _userAdminBridge.ViewPurchaseHistoryByUser("Vika");

            //make sure the price presented is without the discount
            string[] purchaseReceived = purchaseHistory.ReportList;
            string[] purchaseExpected =
            {
                "User: Vika Product: Ouch Store: Toy Sale: Immediate Quantity: 3 Price: 90 Date: " +
                DateTime.Now.Date.ToString("dd/MM/yyyy"),
            };
            Assert.AreEqual(purchaseExpected.Length, purchaseReceived.Length);
            for (int i = 0; i < purchaseReceived.Length; i++)
            {
                Assert.AreEqual(purchaseExpected[i], purchaseReceived[i]);
            }
        }
示例#27
0
 public void BuildStore()
 {
     marketDbMocker = new Mock <IMarketBackUpDB>();
     MarketException.SetDB(marketDbMocker.Object);
     MarketLog.SetDB(marketDbMocker.Object);
     handler     = new Mock <IStoreDL>();
     userService = new Mock <IUserSeller>();
     MarketYard.SetDateTime(new DateTime(2018, 4, 14));
     handler.Setup(x => x.GetStorebyName("X")).Returns(new Store("X", ""));
     handler.Setup(x => x.GetProductByNameFromStore("X", "item")).Returns((Product)null);
     handler.Setup(x => x.IsStoreExistAndActive("X")).Returns(true);
     slave = new AddNewProductSlave(userService.Object, "X", handler.Object);
 }
示例#28
0
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     SignUp(ref _storeOwnerUserBridge, "Pnina", "Mishol", "7777", "77777777");
     OpenStoreAndProducts();
     _storeShoppingBridge2   = null;
     _storeManagementBridge2 = null;
     _userBuyer       = null;
     _userAdminBridge = null;
     _orderBridge     = null;
     _userAdmin       = null;
     MarketYard.SetDateTime(new DateTime(2018, 4, 13));
 }
 public void MarketBuilder()
 {
     publisherMock  = new Mock <IPublisher>();
     marketDbMocker = new Mock <IMarketBackUpDB>();
     MarketException.SetDB(marketDbMocker.Object);
     MarketLog.SetDB(marketDbMocker.Object);
     userBuyerMocker = new Mock <IUserBuyer>();
     SupplyService.Instance.FixExternal();
     PaymentService.Instance.FixExternal();
     marketSession      = MarketYard.Instance;
     userServiceSession = (UserService)marketSession.GetUserService();
     userServiceSession.EnterSystem();
     slave = new PurchaseItemSlave(userBuyerMocker.Object, new StoresSyncherHarmony(), OrderDL.Instance, publisherMock.Object, marketSession.GetPolicyChecker());
     InitPolicies();
 }
 public void MarketBuilder()
 {
     MarketDB.Instance.InsertByForce();
     marketSession       = MarketYard.Instance;
     userServiceSession  = (UserService)marketSession.GetUserService();
     userServiceSession2 = (UserService)marketSession.GetUserService();
     userServiceSession3 = (UserService)marketSession.GetUserService();
     userServiceSession2.EnterSystem();
     userServiceSession3.EnterSystem();
     userServiceSession2.SignIn(sysadmin, pass);
     sysadminSession = marketSession.GetSystemAdminService(userServiceSession2);
     userServiceSession.EnterSystem();
     orderServiceSession = (OrderService)marketSession.GetOrderService(ref userServiceSession);
     storeServiceSession = (StoreShoppingService)marketSession.GetStoreShoppingService(ref userServiceSession);
 }