mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-01 14:41:46 +00:00
[MNT-24127] Added Endpoint with test cases [ags][tas]
This commit is contained in:
@@ -25,6 +25,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.alfresco.rest.api.nodes;
|
package org.alfresco.rest.api.nodes;
|
||||||
|
|
||||||
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.model.FolderSizeModel;
|
import org.alfresco.model.FolderSizeModel;
|
||||||
import org.alfresco.repo.action.executer.NodeSizeActionExecuter;
|
import org.alfresco.repo.action.executer.NodeSizeActionExecuter;
|
||||||
import org.alfresco.repo.security.permissions.AccessDeniedException;
|
import org.alfresco.repo.security.permissions.AccessDeniedException;
|
||||||
@@ -53,8 +54,7 @@ import org.springframework.beans.factory.InitializingBean;
|
|||||||
import org.springframework.extensions.webscripts.Status;
|
import org.springframework.extensions.webscripts.Status;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.HashMap;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Node Size
|
* Node Size
|
||||||
@@ -123,6 +123,7 @@ public class NodeFolderSizeRelation implements
|
|||||||
public Map<String, Object> createById(String nodeId, Parameters params) {
|
public Map<String, Object> createById(String nodeId, Parameters params) {
|
||||||
|
|
||||||
NodeRef nodeRef = nodes.validateNode(nodeId);
|
NodeRef nodeRef = nodes.validateNode(nodeId);
|
||||||
|
nodeService.setProperty(nodeRef, FolderSizeModel.PROP_STATUS, "IN-PROGRESS");
|
||||||
Node nodeInfo = nodes.getNode(nodeId);
|
Node nodeInfo = nodes.getNode(nodeId);
|
||||||
NodePermissions nodePerms = nodeInfo.getPermissions();
|
NodePermissions nodePerms = nodeInfo.getPermissions();
|
||||||
int maxItems = params.getPaging().getMaxItems();
|
int maxItems = params.getPaging().getMaxItems();
|
||||||
@@ -140,7 +141,6 @@ public class NodeFolderSizeRelation implements
|
|||||||
folderSizeAction.setExecuteAsynchronously(true);
|
folderSizeAction.setExecuteAsynchronously(true);
|
||||||
folderSizeAction.setParameterValue(NodeSizeActionExecuter.PAGE_SIZE, maxItems);
|
folderSizeAction.setParameterValue(NodeSizeActionExecuter.PAGE_SIZE, maxItems);
|
||||||
actionService.executeAction(folderSizeAction, nodeRef, false, true);
|
actionService.executeAction(folderSizeAction, nodeRef, false, true);
|
||||||
nodeService.setProperty(nodeRef, FolderSizeModel.PROP_STATUS, "IN-PROGRESS");
|
|
||||||
Map<String, Object> result = new HashMap<>();
|
Map<String, Object> result = new HashMap<>();
|
||||||
result.put("executionId", nodeId);
|
result.put("executionId", nodeId);
|
||||||
return result;
|
return result;
|
||||||
|
@@ -46,10 +46,12 @@ import static org.junit.Assert.assertNotNull;
|
|||||||
public class NodeFolderSizeApiTest extends AbstractBaseApiTest{
|
public class NodeFolderSizeApiTest extends AbstractBaseApiTest{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Private site of user one from network one.
|
* Private site of user two from network one.
|
||||||
*/
|
*/
|
||||||
private Site userOneN1Site;
|
private Site userOneN1Site;
|
||||||
|
|
||||||
|
private Site userOneN2Site;
|
||||||
|
|
||||||
private String addToDocumentLibrary(Site testSite, String name, String nodeType, String userId) throws Exception
|
private String addToDocumentLibrary(Site testSite, String name, String nodeType, String userId) throws Exception
|
||||||
{
|
{
|
||||||
String parentId = getSiteContainerNodeId(testSite.getId(), "documentLibrary");
|
String parentId = getSiteContainerNodeId(testSite.getId(), "documentLibrary");
|
||||||
@@ -62,7 +64,7 @@ public class NodeFolderSizeApiTest extends AbstractBaseApiTest{
|
|||||||
* {@literal <host>:<port>/alfresco/api/<networkId>/public/alfresco/versions/1/nodes/<nodeId>/calculateSize}
|
* {@literal <host>:<port>/alfresco/api/<networkId>/public/alfresco/versions/1/nodes/<nodeId>/calculateSize}
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
public void testCalculateFolderSize() throws Exception
|
public void testPostCalculateFolderSize() throws Exception
|
||||||
{
|
{
|
||||||
setRequestContext(user1);
|
setRequestContext(user1);
|
||||||
|
|
||||||
@@ -81,12 +83,43 @@ public class NodeFolderSizeApiTest extends AbstractBaseApiTest{
|
|||||||
Object document = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Object.class);
|
Object document = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Object.class);
|
||||||
String contentNodeId = document.toString();
|
String contentNodeId = document.toString();
|
||||||
assertNotNull(contentNodeId);
|
assertNotNull(contentNodeId);
|
||||||
|
|
||||||
|
// -ve test - unknown nodeId
|
||||||
|
delete(getFolderSizeUrl(folderId), folderId, null, 404);
|
||||||
|
|
||||||
|
// -ve test - unauthenticated.
|
||||||
|
delete(getFolderSizeUrl(folderId), folderId, null, 401);
|
||||||
|
|
||||||
|
// -ve test - permission denied (on version other than most recent)
|
||||||
|
delete(getFolderSizeUrl(folderId), folderId, null, 403);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetCalculateFolderSize() throws Exception
|
||||||
|
{
|
||||||
|
setRequestContext(user1);
|
||||||
|
|
||||||
|
String siteTitle = "RandomSite" + System.currentTimeMillis();
|
||||||
|
userOneN2Site = createSite("RN"+RUNID, siteTitle, siteTitle, SiteVisibility.PRIVATE, 201);
|
||||||
|
|
||||||
|
// Create a folder within the site document's library.
|
||||||
|
String folderName = "folder" + System.currentTimeMillis();
|
||||||
|
String folderId = addToDocumentLibrary(userOneN2Site, folderName, TYPE_CM_CONTENT, user1);
|
||||||
|
|
||||||
|
Map<String, String> params = new HashMap<>();
|
||||||
|
params.put("nodeId",folderId);
|
||||||
|
|
||||||
|
HttpResponse response = getSingle(getFolderSizeUrl(folderId), toJsonAsStringNonNull(params), 200);
|
||||||
|
Object document = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Object.class);
|
||||||
|
String contentNodeId = document.toString();
|
||||||
|
assertNotNull(contentNodeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@After
|
@After
|
||||||
public void tearDown() throws Exception
|
public void tearDown() throws Exception
|
||||||
{
|
{
|
||||||
deleteSite(userOneN1Site.getId(), true, 204);
|
deleteSite(userOneN1Site.getId(), true, 204);
|
||||||
|
deleteSite(userOneN2Site.getId(), true, 204);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user