use of org.wso2.siddhi.query.api.expression.math.Add in project carbon-apimgt by wso2.
the class APIStoreImplTestCase method testAddApplicationNullPolicy.
@Test(description = "Add an application with null policy", expectedExceptions = APIManagementException.class)
public void testAddApplicationNullPolicy() throws Exception {
ApplicationDAO applicationDAO = Mockito.mock(ApplicationDAO.class);
PolicyDAO policyDAO = Mockito.mock(PolicyDAO.class);
WorkflowDAO workflowDAO = Mockito.mock(WorkflowDAO.class);
APIStore apiStore = getApiStoreImpl(applicationDAO, policyDAO, workflowDAO);
Application application = new Application(APP_NAME, USER_NAME);
application.setPolicy(new ApplicationPolicy(TIER));
Mockito.when(applicationDAO.isApplicationNameExists(APP_NAME)).thenReturn(false);
Mockito.when(policyDAO.getPolicyByLevelAndName(APIMgtAdminService.PolicyLevel.application, TIER)).thenReturn(null);
apiStore.addApplication(application);
}
use of org.wso2.siddhi.query.api.expression.math.Add in project carbon-apimgt by wso2.
the class APIStoreImplTestCase method testGetAPIWithNotAllowedLifecycleStates.
@Test(description = "Test get API with not allowed lifecycle states (Created, Maintenance, Retired)")
public void testGetAPIWithNotAllowedLifecycleStates() throws APIManagementException {
String exceptionShouldThrowError = "Exception should be thrown when accessing an API in %s state";
String matchedErrorMessage = "Attempt to access an API which is in a restricted state";
ApiDAO apiDAO = Mockito.mock(ApiDAO.class);
PolicyDAO policyDAO = Mockito.mock(PolicyDAO.class);
Policy policy = new SubscriptionPolicy(UUID, TIER);
Mockito.when(policyDAO.getSimplifiedPolicyByLevelAndName(APIMgtAdminService.PolicyLevel.subscription, TIER)).thenReturn(policy);
APIStore apiStore = getApiStoreImpl(apiDAO, Mockito.mock(ApplicationDAO.class), Mockito.mock(APISubscriptionDAO.class), Mockito.mock(WorkflowDAO.class), Mockito.mock(APIGateway.class), policyDAO);
API.APIBuilder apiBuilder = SampleTestObjectCreator.createDefaultAPI();
String apiId = apiBuilder.getId();
List<String> notAllowedStates = new ArrayList<String>() {
{
add(APIStatus.CREATED.getStatus());
add(APIStatus.MAINTENANCE.getStatus());
add(APIStatus.RETIRED.getStatus());
}
};
for (String notAllowedState : notAllowedStates) {
apiBuilder.lifeCycleStatus(notAllowedState);
API api = apiBuilder.build();
Mockito.when(apiDAO.getAPI(apiId)).thenReturn(api);
try {
apiStore.getAPIbyUUID(apiId);
Assert.fail(exceptionShouldThrowError);
} catch (APIManagementException e) {
Assert.assertTrue(e.getMessage().contains(matchedErrorMessage));
}
}
}
use of org.wso2.siddhi.query.api.expression.math.Add in project carbon-apimgt by wso2.
the class APIStoreImplTestCase method testAddRatingDaoException.
/**
* Tests to catch exceptions in methods
*/
@Test(description = "Add rating exception in dao", expectedExceptions = APIRatingException.class)
public void testAddRatingDaoException() throws APIManagementException {
ApiDAO apiDAO = Mockito.mock(ApiDAO.class);
APIStore apiStore = getApiStoreImpl(apiDAO);
API api = SampleTestObjectCreator.createDefaultAPI().build();
Mockito.when(apiDAO.isAPIExists(api.getId())).thenReturn(true);
Rating rating = SampleTestObjectCreator.createDefaultRating(api.getId());
Mockito.when(apiDAO.getRatingByUUID(api.getId(), rating.getUuid())).thenReturn(rating);
Mockito.doThrow(new APIMgtDAOException("Error occurred while adding rating for api", new SQLException())).when(apiDAO).addRating(api.getId(), rating);
apiStore.addRating(api.getId(), rating);
}
use of org.wso2.siddhi.query.api.expression.math.Add in project carbon-apimgt by wso2.
the class APIStoreImplTestCase method testAddApplication.
@Test(description = "Add an application")
public void testAddApplication() throws APIManagementException {
ApplicationDAO applicationDAO = Mockito.mock(ApplicationDAO.class);
PolicyDAO policyDAO = Mockito.mock(PolicyDAO.class);
WorkflowDAO workflowDAO = Mockito.mock(WorkflowDAO.class);
Policy policy = Mockito.mock(Policy.class);
APIGateway apiGateway = Mockito.mock(APIGateway.class);
APIStore apiStore = getApiStoreImpl(applicationDAO, policyDAO, workflowDAO, apiGateway);
Application application = new Application(APP_NAME, USER_NAME);
application.setPolicy(new ApplicationPolicy(TIER));
application.setPermissionString("[{\"groupId\": \"testGroup\",\"permission\":[\"READ\",\"UPDATE\",\"DELETE\",\"SUBSCRIPTION\"]}]");
Mockito.when(applicationDAO.isApplicationNameExists(APP_NAME)).thenReturn(false);
Mockito.when(policyDAO.getSimplifiedPolicyByLevelAndName(APIMgtAdminService.PolicyLevel.application, TIER)).thenReturn(policy);
ApplicationCreationResponse response = apiStore.addApplication(application);
Assert.assertNotNull(response.getApplicationUUID());
Mockito.verify(applicationDAO, Mockito.times(1)).addApplication(application);
}
use of org.wso2.siddhi.query.api.expression.math.Add in project carbon-apimgt by wso2.
the class APIStoreImplTestCase method testAddComment.
@Test(description = "Add comment")
public void testAddComment() throws APIManagementException {
ApiDAO apiDAO = Mockito.mock(ApiDAO.class);
APIStore apiStore = getApiStoreImpl(apiDAO);
API api = SampleTestObjectCreator.createDefaultAPI().build();
Mockito.when(apiDAO.isAPIExists(api.getId())).thenReturn(true);
Comment comment = SampleTestObjectCreator.createDefaultComment(api.getId());
apiStore.addComment(comment, api.getId());
Mockito.verify(apiDAO, Mockito.times(1)).isAPIExists(api.getId());
Mockito.verify(apiDAO, Mockito.times(1)).addComment(comment, api.getId());
}
Aggregations