Skip to content

Commit

Permalink
Merge pull request #13324 from HeshanSudarshana/master-ndb-cluster-is…
Browse files Browse the repository at this point in the history
…sues

Update subscription policy test case to support NDB cluster
  • Loading branch information
npamudika committed Feb 6, 2024
2 parents ca9f7a6 + 64eba38 commit 8b08087
Showing 1 changed file with 56 additions and 45 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@

package org.wso2.am.integration.tests.publisher;

import java.util.List;

import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Factory;
Expand All @@ -29,7 +31,6 @@
import org.wso2.am.integration.test.utils.base.APIMIntegrationBaseTest;
import org.wso2.carbon.automation.engine.context.TestUserMode;


import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
import static org.wso2.carbon.apimgt.api.model.policy.PolicyConstants.EVENT_COUNT_TYPE;
Expand Down Expand Up @@ -61,69 +62,79 @@ public void testGetAllSubscriptionThrottlingPoliciesByQuotaType() throws Excepti
assertNotNull(subscriptionPolicyList, "There are no subscription policies available");
assertNotNull(subscriptionPolicyList.getCount(), "Subscription policy count should be available");
assertEquals(subscriptionPolicyList.getCount().intValue(), 8, "There must be only 8 policies by default");
assertNotNull(subscriptionPolicyList.getList(), "Subscription policy list should be available");

SubscriptionPolicyDTO tierAsyncBronze = subscriptionPolicyList.getList().get(2);
assertEquals(tierAsyncBronze.getDescription(), "Allows 5000 events per day",
"Invalid description of the tier Async Bronze");
SubscriptionPolicyDTO tierAsyncBronze = getSubscriptionPolicy("AsyncBronze",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncBronze, "Tier AsyncBronze is not available");
assertEquals(tierAsyncBronze.getDisplayName(), "AsyncBronze",
"Invalid display name of the tier Async Bronze");
assertEquals(tierAsyncBronze.getPolicyName(), "AsyncBronze",
"Invalid name of the tier Async Bronze");
"Invalid display name of the tier AsyncBronze");
assertEquals(tierAsyncBronze.getDescription(), "Allows 5000 events per day",
"Invalid description of the tier AsyncBronze");

SubscriptionPolicyDTO tierAsyncGold = subscriptionPolicyList.getList().get(0);
assertEquals(tierAsyncGold.getDescription(), "Allows 50000 events per day",
"Invalid description of the tier Async Gold");
SubscriptionPolicyDTO tierAsyncGold = getSubscriptionPolicy("AsyncGold",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncGold, "Tier AsyncGold is not available");
assertEquals(tierAsyncGold.getDisplayName(), "AsyncGold",
"Invalid display name of the tier Async Gold");
assertEquals(tierAsyncGold.getPolicyName(), "AsyncGold",
"Invalid name of the tier Async Gold");
"Invalid display name of the tier AsyncGold");
assertEquals(tierAsyncGold.getDescription(), "Allows 50000 events per day",
"Invalid description of the tier AsyncGold");

SubscriptionPolicyDTO tierAsyncSilver = subscriptionPolicyList.getList().get(1);
assertEquals(tierAsyncSilver.getDescription(), "Allows 25000 events per day",
"Invalid description of the tier Async Silver");
SubscriptionPolicyDTO tierAsyncSilver = getSubscriptionPolicy("AsyncSilver",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncSilver, "Tier AsyncSilver is not available");
assertEquals(tierAsyncSilver.getDisplayName(), "AsyncSilver",
"Invalid display name of the tier Async Silver");
assertEquals(tierAsyncSilver.getPolicyName(), "AsyncSilver",
"Invalid name of the tier Async Silver");
"Invalid display name of the tier AsyncSilver");
assertEquals(tierAsyncSilver.getDescription(), "Allows 25000 events per day",
"Invalid description of the tier AsyncSilver");

SubscriptionPolicyDTO tierAsyncUnlimited = subscriptionPolicyList.getList().get(3);
assertEquals(tierAsyncUnlimited.getDescription(), "Allows unlimited events",
"Invalid description of the tier Async Unlimited");
SubscriptionPolicyDTO tierAsyncUnlimited = getSubscriptionPolicy("AsyncUnlimited",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncUnlimited, "Tier AsyncUnlimited is not available");
assertEquals(tierAsyncUnlimited.getDisplayName(), "AsyncUnlimited",
"Invalid display name of the tier Async Unlimited");
assertEquals(tierAsyncUnlimited.getPolicyName(), "AsyncUnlimited",
"Invalid name of the tier Async Unlimited");
"Invalid display name of the tier AsyncUnlimited");
assertEquals(tierAsyncUnlimited.getDescription(), "Allows unlimited events",
"Invalid description of the tier AsyncUnlimited");

SubscriptionPolicyDTO tierAsyncWHBronze = subscriptionPolicyList.getList().get(6);
assertEquals(tierAsyncWHBronze.getDescription(), "Allows 1000 events per month and 500 active " +
"subscriptions", "Invalid description of the tier AsyncWHBronze");
SubscriptionPolicyDTO tierAsyncWHBronze = getSubscriptionPolicy("AsyncWHBronze",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncWHBronze, "Tier AsyncWHBronze is not available");
assertEquals(tierAsyncWHBronze.getDisplayName(), "AsyncWHBronze",
"Invalid display name of the tier AsyncWHBronze");
assertEquals(tierAsyncWHBronze.getPolicyName(), "AsyncWHBronze",
"Invalid name of the tier AsyncWHBronze");
assertEquals(tierAsyncWHBronze.getDescription(), "Allows 1000 events per month and 500 active " +
"subscriptions", "Invalid description of the tier AsyncWHBronze");

SubscriptionPolicyDTO tierAsyncWHGold = subscriptionPolicyList.getList().get(4);
assertEquals(tierAsyncWHGold.getDescription(), "Allows 10000 events per month and 1000 active" +
" subscriptions", "Invalid description of the tier AsyncWHGold");
SubscriptionPolicyDTO tierAsyncWHGold = getSubscriptionPolicy("AsyncWHGold",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncWHGold, "Tier AsyncWHGold is not available");
assertEquals(tierAsyncWHGold.getDisplayName(), "AsyncWHGold",
"Invalid display name of the tier AsyncWHGold");
assertEquals(tierAsyncWHGold.getPolicyName(), "AsyncWHGold",
"Invalid name of the tier AsyncWHGold");
assertEquals(tierAsyncWHGold.getDescription(), "Allows 10000 events per month and 1000 active " +
"subscriptions", "Invalid description of the tier AsyncWHGold");

SubscriptionPolicyDTO tierAsyncWHSilver = subscriptionPolicyList.getList().get(5);
assertEquals(tierAsyncWHSilver.getDescription(), "Allows 5000 events per month and 500 active " +
"subscriptions", "Invalid description of the tier AsyncWHSilver");
SubscriptionPolicyDTO tierAsyncWHSilver = getSubscriptionPolicy("AsyncWHSilver",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncWHSilver, "Tier AsyncWHSilver is not available");
assertEquals(tierAsyncWHSilver.getDisplayName(), "AsyncWHSilver",
"Invalid display name of the tier AsyncWHSilver");
assertEquals(tierAsyncWHSilver.getPolicyName(), "AsyncWHSilver",
"Invalid name of the tier AsyncWHSilver");
assertEquals(tierAsyncWHSilver.getDescription(), "Allows 5000 events per month and 500 active " +
"subscriptions", "Invalid description of the tier AsyncWHSilver");

SubscriptionPolicyDTO tierAsyncWHUnlimited = subscriptionPolicyList.getList().get(7);
SubscriptionPolicyDTO tierAsyncWHUnlimited = getSubscriptionPolicy("AsyncWHUnlimited",
subscriptionPolicyList.getList());
assertNotNull(tierAsyncWHUnlimited, "Tier AsyncWHUnlimited is not available");
assertEquals(tierAsyncWHUnlimited.getDisplayName(), "AsyncWHUnlimited",
"Invalid display name of the tier AsyncWHUnlimited");
assertEquals(tierAsyncWHUnlimited.getDescription(), "Allows unlimited events and unlimited active " +
"subscriptions", "Invalid description of the tier AsyncWHUnlimited");
assertEquals(tierAsyncWHUnlimited.getDisplayName(), "AsyncWHUnlimited",
"Invalid display name of the tier Bronze");
assertEquals(tierAsyncWHUnlimited.getPolicyName(), "AsyncWHUnlimited",
"Invalid name of the tier AsyncWHUnlimited");
}

public SubscriptionPolicyDTO getSubscriptionPolicy(String policyName, List<SubscriptionPolicyDTO> subscriptionPolicyDTOList) {
for (SubscriptionPolicyDTO subscriptionPolicyDTO: subscriptionPolicyDTOList) {
if (subscriptionPolicyDTO.getPolicyName().equals(policyName)) {
return subscriptionPolicyDTO;
}
}
return null;
}
}

0 comments on commit 8b08087

Please sign in to comment.