public void RemoveCompositeDiscount_composedOfComposites_Success()
        {
            LoginSessionSuccess(REGISTERED_SESSION_ID, FIRST_OPENER_USERNAME, PASSWORD);
            ItemMinMaxPurchasePolicy policy1    = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, FIRST_ITEM_FIRST_STORE_ID, 5, 10);
            ItemMinMaxPurchasePolicy policy2    = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, SECOND_ITEM_FIRST_STORE_ID, 5, 10);
            CompositePurchasePolicy  composite1 = DeserializeCompositePurchasePolicySucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, policy1.policyID,
                                                                                           policy2.policyID, "&");

            StoreMinMaxPurchasePolicy    policy3    = DeserialzeStoreMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, 5, 10);
            DaysNotAllowedPurchasePolicy policy4    = DeserialzeDaysNotAllowedSucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, new int[] { 1, 5, 7 });
            CompositePurchasePolicy      composite2 = DeserializeCompositePurchasePolicySucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, policy3.policyID,
                                                                                               policy4.policyID, "|");

            CompositePurchasePolicy composite3 = DeserializeCompositePurchasePolicySucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, composite1.policyID,
                                                                                          composite2.policyID, "xor");

            Assert.True(DeserializeRemovePurchasePolicySuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, composite3.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy1.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy2.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy3.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy4.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, composite1.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, composite2.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, composite3.policyID));
        }
Exemple #2
0
        public void CompositePolicy_both_false_not_valid(Operator @operator)
        {
            ItemMinMaxPurchasePolicy  policy1 = new ItemMinMaxPurchasePolicy(Item1, 6, null, MOCK_NAME_FOR_DESCRIPTION);
            StoreMinMaxPurchasePolicy policy2 = new StoreMinMaxPurchasePolicy(11, 12, MOCK_NAME_FOR_DESCRIPTION);

            CompositePurchasePolicy compositePurchase = new CompositePurchasePolicy(policy1, policy2, @operator);

            Assert.False(compositePurchase.IsValidPurchase(multyItemsAmount10));
        }
        public void RemoveBasicPolicy_thatIsPartOfComposite_Failure()
        {
            LoginSessionSuccess(REGISTERED_SESSION_ID, FIRST_OPENER_USERNAME, PASSWORD);
            ItemMinMaxPurchasePolicy policy1    = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, FIRST_ITEM_FIRST_STORE_ID, 5, 10);
            ItemMinMaxPurchasePolicy policy2    = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, SECOND_ITEM_FIRST_STORE_ID, 5, 10);
            CompositePurchasePolicy  composite1 = DeserializeCompositePurchasePolicySucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, policy1.policyID,
                                                                                           policy2.policyID, "&");

            Assert.False(DeserializeRemovePurchasePolicy(REGISTERED_SESSION_ID, FIRST_STORE_ID, policy1.policyID).Success);
            Assert.True(marketFacade.PurchasePolicyExistsInStore(FIRST_STORE_ID, policy1.policyID));
            Assert.True(marketFacade.PurchasePolicyExistsInStore(FIRST_STORE_ID, policy2.policyID));
            Assert.True(marketFacade.PurchasePolicyExistsInStore(FIRST_STORE_ID, composite1.policyID));
        }
        public void RemoveCompositeDiscount_Success()
        {
            LoginSessionSuccess(REGISTERED_SESSION_ID, FIRST_OPENER_USERNAME, PASSWORD);
            ItemMinMaxPurchasePolicy policy1   = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, FIRST_ITEM_FIRST_STORE_ID, 5, 10);
            ItemMinMaxPurchasePolicy policy2   = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, SECOND_ITEM_FIRST_STORE_ID, 5, 10);
            CompositePurchasePolicy  composite = DeserializeCompositePurchasePolicySucces(REGISTERED_SESSION_ID, FIRST_STORE_ID, policy1.policyID,
                                                                                          policy2.policyID, "&");

            Assert.True(DeserializeRemovePurchasePolicySuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, composite.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy1.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, policy2.policyID));
            Assert.False(marketFacade.DiscountExistsInStore(FIRST_STORE_ID, composite.policyID));
        }
Exemple #5
0
        public static Shop SaveShopCompositePurchasePolicy()
        {
            var shop   = SaveShopWithName();
            var policy = new CompositePurchasePolicy
                         (
                new CartPurchasePolicy(5, new SmallerThan(), "desc"),
                new Or(),
                new UserPurchasePolicy("field", 1, "desc"),
                "desc"
                         );

            shop.PurchasePolicies.Add(policy);
            return(shop);
        }