String name = createCommunityName();
addSnippetParam("CommunityService.title", name);
addSnippetParam("CommunityService.content", name);
JavaScriptPreviewPage previewPage = executeSnippet(CREATE_SNIPPET_ID);
JsonJavaObject json = previewPage.getJson();
Assert.assertNull("Unexpected error detected on page", json.getString("code"));
String communityUuid = json.getString("getCommunityUuid");
community = getCommunity(communityUuid);
assertCommunityValid(json);
addSnippetParam("CommunityService.communityUuid", community.getCommunityUuid());
previewPage = executeSnippet(GET_SNIPPET_ID);
List jsonList = previewPage.getJsonList();
assertCommunityValid((JsonJavaObject)jsonList.get(0));
Assert.assertEquals(community.getCommunityUuid(), ((JsonJavaObject)jsonList.get(1)).getString("entityId"));
addSnippetParam("CommunityService.communityUuid2", community.getCommunityUuid());
previewPage = executeSnippet(DELETE_SNIPPET_ID);
json = previewPage.getJson();
Assert.assertNull("Unexpected error detected on page", json.getString("code"));
Assert.assertEquals(community.getCommunityUuid(), json.getString("communityUuid"));
community = getCommunity(community.getCommunityUuid(), false);
if (community != null) {
String flag = community.getAsString("a:category[@scheme='http://www.ibm.com/xmlns/prod/sn/flags']/@term");
Assert.assertEquals("Delete community is still available", "deleted", flag);