public async Task GetStoreHistoryWithPermission()
        {
            CreditCard  card        = new CreditCard("1", "1", "1", "1", "1", "1");
            Address     address     = new Address("1", "1", "1", "1", "1");
            Product     product     = new Product(new Guid(), 100, 100, 100);
            User        user        = new User("testUser");
            MemberState memberState = new MemberState(user.Username);

            user.ChangeState(memberState);
            MarketUsers  market       = MarketUsers.Instance;
            MarketStores marketStores = MarketStores.Instance;

            market.ActiveUsers.TryAdd(user.Username, user);
            Store store = await marketStores.CreateStore("storeTest", user.Username, card, address);

            store.UpdateProduct(product);
            await user.UpdateProductInShoppingBasket(store, product, 5);

            var v1 = await user.PurchaseShoppingCart(card, "0544444444", address);

            Assert.IsTrue(!v1.IsErr);
            ICollection <IHistory> storeHistory = await store.GetStoreHistory(user.Username);

            Assert.IsNotNull(storeHistory);
            Assert.AreEqual(1, storeHistory.Count);
        }
        public async Task Initialize()
        {
            ProxyMarketContext.Instance.marketTearDown();
            marketStores = MarketStores.Instance;
            marketUsers  = MarketUsers.Instance;
            PublisherManagement.Instance.DeleteAll();
            marketUsers.DeleteAll();
            marketStores.DeleteAll();
            PublisherManagement.Instance.SetTestMode(true);

            this.user = new User("UserTests");
            user.ChangeState(new MemberState(user.Username));
            var dataUser = new DataUser(user.Username, "", new Address("1", "1", "1", "1", "1"), "054444444");

            dataUser.IsLoggedin = true;
            await ProxyMarketContext.Instance.AddDataUser(dataUser);

            marketUsers.ActiveUsers.TryAdd(user.Username, user);

            this.store  = new Store("Founder", new CreditCard("1", "1", "1", "1", "1", "1"), new Address("1", "1", "1", "1", "1"));
            founderUser = new User("Founder");
            founderUser.ChangeState(new MemberState(founderUser.Username));
            this.founder        = Founder.makeFounder((MemberState)founderUser.State, store);
            store.Founder       = founder;
            dataUser            = new DataUser(founderUser.Username, "", new Address("1", "1", "1", "1", "1"), "054444444");
            dataUser.IsLoggedin = true;
            await ProxyMarketContext.Instance.AddDataUser(dataUser);

            marketUsers.ActiveUsers.TryAdd(founder.Username, founderUser);
            ProxyMarketContext.Instance.IsDebug = true;
        }
示例#3
0
        public async Task CreateStoreAndCheckFounder()
        {
            CreditCard  card        = new CreditCard("1", "1", "1", "1", "1", "1");
            Address     address     = new Address("1", "1", "1", "1", "1");
            User        user        = new User("testUser");
            MemberState memberState = new MemberState(user.Username);

            user.ChangeState(memberState);
            MarketStores market      = MarketStores.Instance;
            MarketUsers  marketUsers = MarketUsers.Instance;

            marketUsers.ActiveUsers.TryAdd(user.Username, user);
            Store store = await market.CreateStore("storeTest", user.Username, card, address);

            Assert.IsNotNull(store);
            Assert.AreEqual(store.Founder.Username, user.Username);
        }
        public async Task GetStoreEmptyHistoryPurchaseFailed()
        {
            CreditCard  card        = new CreditCard("1", "1", "1", "1", "1", "1");
            Address     address     = new Address("1", "1", "1", "1", "1");
            Product     product     = new Product(new Guid(), 100, 100, 100);
            User        user        = new User("testUser");
            MemberState memberState = new MemberState(user.Username);

            user.ChangeState(memberState);
            MarketUsers  market       = MarketUsers.Instance;
            MarketStores marketStores = MarketStores.Instance;

            market.ActiveUsers.TryAdd(user.Username, user);
            Store store = await marketStores.CreateStore("storeTest", user.Username, card, address);

            store.UpdateProduct(product);
            await user.UpdateProductInShoppingBasket(store, product, 5);

            Mock <ExternalPaymentSystem> paymentSystem = new Mock <ExternalPaymentSystem>();

            paymentSystem.Setup(p => p.CreatePaymentAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult("-1"));
            Transaction transaction = Transaction.Instance;

            transaction.PaymentAdapter.SetPaymentSystem(paymentSystem.Object);
            ICollection <IHistory> storeHistory = await store.GetStoreHistory(user.Username);

            Assert.IsNotNull(storeHistory);
            Assert.AreEqual(0, storeHistory.Count);
            var v1 = await user.PurchaseShoppingCart(card, "0544444444", address);

            Assert.IsFalse(!v1.IsErr);
            storeHistory = await store.GetStoreHistory(user.Username);

            Assert.IsNotNull(storeHistory);
            Assert.AreEqual(0, storeHistory.Count);
        }
 private MarketUserService()
 {
     marketUsers = MarketUsers.Instance;
 }
 private MarketGeneralService()
 {
     marketUsers  = MarketUsers.Instance;
     marketStores = MarketStores.Instance;
 }
示例#7
0
 private MarketShoppingCartService()
 {
     marketUsers = MarketUsers.Instance;
 }
示例#8
0
 public LoggerTests()
 {
     logger      = Logger.Instance;
     marketUsers = MarketUsers.Instance;
     logger.CleanLogs();
 }