mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-21 18:09:20 +00:00
Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2)
122175 gjames: RA-823 added parseListSource() proxy method and SiteMembers source entity test git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@126456 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -16,17 +16,21 @@ import org.alfresco.repo.tenant.TenantUtil.TenantRunAsWork;
|
||||
import org.alfresco.rest.api.tests.RepoService.TestNetwork;
|
||||
import org.alfresco.rest.api.tests.RepoService.TestPerson;
|
||||
import org.alfresco.rest.api.tests.RepoService.TestSite;
|
||||
import org.alfresco.rest.api.tests.client.HttpResponse;
|
||||
import org.alfresco.rest.api.tests.client.PublicApiClient.ListResponse;
|
||||
import org.alfresco.rest.api.tests.client.PublicApiClient.Paging;
|
||||
import org.alfresco.rest.api.tests.client.PublicApiClient.Sites;
|
||||
import org.alfresco.rest.api.tests.client.PublicApiException;
|
||||
import org.alfresco.rest.api.tests.client.RequestContext;
|
||||
import org.alfresco.rest.api.tests.client.data.Person;
|
||||
import org.alfresco.rest.api.tests.client.data.Site;
|
||||
import org.alfresco.rest.api.tests.client.data.SiteImpl;
|
||||
import org.alfresco.rest.api.tests.client.data.SiteMember;
|
||||
import org.alfresco.rest.api.tests.client.data.SiteRole;
|
||||
import org.alfresco.service.cmr.site.SiteVisibility;
|
||||
import org.alfresco.util.GUID;
|
||||
import org.apache.commons.httpclient.HttpStatus;
|
||||
import org.json.simple.JSONObject;
|
||||
import org.junit.Test;
|
||||
|
||||
public class TestSiteMembers extends EnterpriseTestApi
|
||||
@@ -88,6 +92,14 @@ public class TestSiteMembers extends EnterpriseTestApi
|
||||
publicApiClient.setRequestContext(new RequestContext(testNetwork.getId(), personId));
|
||||
ListResponse<SiteMember> siteMembers = sitesProxy.getSiteMembers(testSite.getSiteId(), createParams(paging, null));
|
||||
checkList(expectedSiteMembers.subList(skipCount, skipCount + paging.getExpectedPaging().getCount()), paging.getExpectedPaging(), siteMembers);
|
||||
|
||||
HttpResponse response = sitesProxy.getAll("sites", testSite.getSiteId(), "members", null, createParams(paging,Collections.singletonMap("includeSource", "true")), "Failed to get all site members");
|
||||
checkList(expectedSiteMembers.subList(skipCount, skipCount + paging.getExpectedPaging().getCount()), paging.getExpectedPaging(), SiteMember.parseSiteMembers(testSite.getSiteId(), response.getJsonResponse()));
|
||||
JSONObject source = sitesProxy.parseListSource(response.getJsonResponse());
|
||||
Site sourceSite = SiteImpl.parseSite(source);
|
||||
assertNotNull(sourceSite);
|
||||
assertEquals(testSite.getSiteId(), sourceSite.getSiteId());
|
||||
assertEquals(testSite.getGuid(), sourceSite.getGuid());
|
||||
}
|
||||
|
||||
// invalid site id
|
||||
|
@@ -1,5 +1,7 @@
|
||||
package org.alfresco.rest.api.tests.client;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.Serializable;
|
||||
@@ -725,6 +727,16 @@ public class PublicApiClient
|
||||
throw new PublicApiException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public JSONObject parseListSource(JSONObject jsonResponse)
|
||||
{
|
||||
JSONObject jsonList = (JSONObject)jsonResponse.get("list");
|
||||
assertNotNull(jsonList);
|
||||
|
||||
JSONObject source = (JSONObject)jsonList.get("source");
|
||||
assertNotNull(source);
|
||||
return source;
|
||||
}
|
||||
}
|
||||
|
||||
public static class ListResponse<T>
|
||||
|
@@ -33,7 +33,7 @@ public abstract class ListParser<T>
|
||||
|
||||
public ListResponse<T> parseList(JSONObject jsonResponse)
|
||||
{
|
||||
List<T> deployments = new ArrayList<T>();
|
||||
List<T> entries = new ArrayList<T>();
|
||||
|
||||
JSONObject jsonList = (JSONObject)jsonResponse.get("list");
|
||||
assertNotNull(jsonList);
|
||||
@@ -45,12 +45,12 @@ public abstract class ListParser<T>
|
||||
{
|
||||
JSONObject jsonEntry = (JSONObject)jsonEntries.get(i);
|
||||
JSONObject entry = (JSONObject)jsonEntry.get("entry");
|
||||
deployments.add(parseEntry(entry));
|
||||
entries.add(parseEntry(entry));
|
||||
}
|
||||
|
||||
ExpectedPaging paging = ExpectedPaging.parsePagination(jsonList);
|
||||
|
||||
ListResponse<T> resp = new ListResponse<T>(paging, deployments);
|
||||
ListResponse<T> resp = new ListResponse<T>(paging, entries);
|
||||
return resp;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user