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));
        }
Example #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 AddCompositePurchaePolicy_typeNotAllowed_failure()
        {
            LoginSessionSuccess(REGISTERED_SESSION_ID, FIRST_OPENER_USERNAME, PASSWORD);
            DeserializeMakePurchasePolicyNotAllowedSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, "composite");


            ItemMinMaxPurchasePolicy left = DeserialzeItemMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, FIRST_ITEM_FIRST_STORE_ID, 5, 10);

            StoreMinMaxPurchasePolicy right = DeserialzeStoreMinMaxSuccess(REGISTERED_SESSION_ID, FIRST_STORE_ID, 5, 10);

            Assert.False(DeserializeCompositePurchasePolicy(REGISTERED_SESSION_ID, FIRST_STORE_ID, left.policyID,
                                                            right.policyID, "&").Success);
        }
Example #4
0
        public void storeMinMaxPurchasePolicy_runner(int?minAmount, int?maxAmount, StoreCart cart, bool valid)
        {
            StoreMinMaxPurchasePolicy policy = new StoreMinMaxPurchasePolicy(minAmount, maxAmount, MOCK_NAME_FOR_DESCRIPTION);

            Assert.AreEqual(valid, policy.IsValidPurchase(cart));
        }