From f2b37ccce90f95a9e3b0937e61b0380c53c72446 Mon Sep 17 00:00:00 2001 From: Alan Davis Date: Thu, 3 Nov 2016 13:27:42 +0000 Subject: [PATCH] Merged 5.2.N (5.2.1) to HEAD (5.2) 130854 jvonka: REPO-1058 / REPO-1244: REST API - list Sites - orderBy - tweak the default (as agreed with GC) - update automated unit test (and also refactor to make it re-runnable and to consistently use create site api) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@132191 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/rest/api/impl/SitesImpl.java | 2 +- .../alfresco/rest/api/tests/TestSites.java | 168 ++++++++---------- .../rest/api/tests/client/data/SiteImpl.java | 9 + 3 files changed, 89 insertions(+), 90 deletions(-) diff --git a/source/java/org/alfresco/rest/api/impl/SitesImpl.java b/source/java/org/alfresco/rest/api/impl/SitesImpl.java index 51b40722b0..b4b1530014 100644 --- a/source/java/org/alfresco/rest/api/impl/SitesImpl.java +++ b/source/java/org/alfresco/rest/api/impl/SitesImpl.java @@ -683,7 +683,7 @@ public class SitesImpl implements Sites else { // default sort order - sortProps.add(new Pair<>(ContentModel.PROP_NAME, Boolean.TRUE)); + sortProps.add(new Pair<>(ContentModel.PROP_TITLE, Boolean.TRUE)); } final PagingResults pagingResult = siteService.listSites(null, sortProps, pagingRequest); diff --git a/source/test-java/org/alfresco/rest/api/tests/TestSites.java b/source/test-java/org/alfresco/rest/api/tests/TestSites.java index 2d2ba03269..910b27a535 100644 --- a/source/test-java/org/alfresco/rest/api/tests/TestSites.java +++ b/source/test-java/org/alfresco/rest/api/tests/TestSites.java @@ -26,12 +26,10 @@ package org.alfresco.rest.api.tests; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.fail; import java.util.ArrayList; import java.util.HashMap; -import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Map; @@ -64,30 +62,32 @@ import org.junit.Test; */ public class TestSites extends EnterpriseTestApi { + private static final String RUNID = System.currentTimeMillis()+""; + + // test network 1 private TestNetwork network1; private String person1Id; private String person2Id; - private String person3Id; - private Site site1; private Site site2; private Site site3; - // network with sites to test sorting and paging - private TestNetwork network2; + // test network 2 + private TestNetwork network2; + private String person3Id; - private SiteImpl site4; - private SiteImpl site5; - private SiteImpl site6; + private Site site4; + private Site site5; + private Site site6; - private String site4_id = "a_" + GUID.generate(); + private String site4_id = "a-" + GUID.generate(); private String site4_title = "c_" + GUID.generate(); private String site4_description = "b_" + GUID.generate(); - private String site5_id = "b_" + GUID.generate(); + private String site5_id = "b-" + GUID.generate(); private String site5_title = "a_" + GUID.generate(); private String site5_description = "c_" + GUID.generate(); - private String site6_id = "c_" + GUID.generate(); + private String site6_id = "c-" + GUID.generate(); private String site6_title = "b_" + GUID.generate(); private String site6_description = "a_" + GUID.generate(); @@ -96,21 +96,61 @@ public class TestSites extends EnterpriseTestApi public void setup() throws Exception { - // init networks - super.setup(); - - // Test: user is member of an account - this.network1 = getTestFixture().getRandomNetwork(); + initializeNetwork1(); + } - Iterator personIt = network1.getPersonIds().iterator(); + private void initializeNetwork1() throws Exception + { + if (network1 == null) + { + network1 = getRepoService().createNetwork(this.getClass().getName().toLowerCase()+"-1-"+RUNID, true); + network1.create(); - this.person1Id = personIt.next(); - assertNotNull(person1Id); + TenantUtil.runAsSystemTenant(new TenantRunAsWork() + { + @Override + public Void doWork() throws Exception + { + person1Id = network1.createUser().getId(); + person2Id = network1.createUser().getId(); + return null; + } + }, network1.getId()); + } + } + + private void initializeNetwork2WithSites() throws Exception + { + if (network2 == null) + { + network2 = getRepoService().createNetwork(this.getClass().getName().toLowerCase()+"-2-"+RUNID, true); + network2.create(); - this.person2Id = personIt.next(); - assertNotNull(person2Id); - } + TenantUtil.runAsSystemTenant(new TenantRunAsWork() + { + @Override + public Void doWork() throws Exception + { + person3Id = network2.createUser().getId(); + return null; + } + }, network2.getId()); + + publicApiClient.setRequestContext(new RequestContext(network2.getId(), person3Id)); + Sites sitesProxy = publicApiClient.sites(); + + Site site = new SiteImpl(site4_id, site4_title, site4_description, SiteVisibility.PRIVATE.toString()); + site4 = sitesProxy.createSite(site); + + site = new SiteImpl(site5_id, site5_title, site5_description, SiteVisibility.PRIVATE.toString()); + site5 = sitesProxy.createSite(site); + + site = new SiteImpl(site6_id, site6_title, site6_description, SiteVisibility.PRIVATE.toString()); + site6 = sitesProxy.createSite(site); + } + } + @Test public void testGetSiteAndListSites() throws Exception { @@ -428,8 +468,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site6); - expectedList.add(site4); + expectedList.add((SiteImpl)site6); + expectedList.add((SiteImpl)site4); checkList(expectedList, paging.getExpectedPaging(), resp); @@ -454,8 +494,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site6); - expectedList.add(site5); + expectedList.add((SiteImpl)site6); + expectedList.add((SiteImpl)site5); checkList(expectedList, paging.getExpectedPaging(), resp); } @@ -479,8 +519,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site4); - expectedList.add(site5); + expectedList.add((SiteImpl)site4); + expectedList.add((SiteImpl)site5); checkList(expectedList, paging.getExpectedPaging(), resp); } @@ -504,8 +544,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site4); - expectedList.add(site6); + expectedList.add((SiteImpl)site4); + expectedList.add((SiteImpl)site6); checkList(expectedList, paging.getExpectedPaging(), resp); } @@ -529,8 +569,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site5); - expectedList.add(site6); + expectedList.add((SiteImpl)site5); + expectedList.add((SiteImpl)site6); checkList(expectedList, paging.getExpectedPaging(), resp); } @@ -554,8 +594,8 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site5); - expectedList.add(site4); + expectedList.add((SiteImpl)site5); + expectedList.add((SiteImpl)site4); checkList(expectedList, paging.getExpectedPaging(), resp); } @@ -577,9 +617,9 @@ public class TestSites extends EnterpriseTestApi // check results List expectedList = new LinkedList<>(); - expectedList.add(site4); - expectedList.add(site5); - expectedList.add(site6); + expectedList.add((SiteImpl)site5); + expectedList.add((SiteImpl)site6); + expectedList.add((SiteImpl)site4); checkList(expectedList, paging.getExpectedPaging(), resp); @@ -589,7 +629,7 @@ public class TestSites extends EnterpriseTestApi @Test public void testSortingAndPaging() throws Exception { - initializeSites(); + initializeNetwork2WithSites(); publicApiClient.setRequestContext(new RequestContext(network2.getId(), person3Id)); @@ -615,54 +655,4 @@ public class TestSites extends EnterpriseTestApi return sitesProxy.getSites(createParams(paging, params)); } - - // TODO switch to use V1 createSite (instead of RepoService) - private void initializeSites() throws Exception - { - network2 = getRepoService().createNetwork(this.getClass().getName().toLowerCase(), true); - network2.create(); - - TenantUtil.runAsSystemTenant(new TenantRunAsWork() - { - @Override - public Void doWork() throws Exception - { - person3Id = network2.createUser().getId(); - return null; - } - }, network2.getId()); - - this.site4 = TenantUtil.runAsUserTenant(new TenantRunAsWork() - { - @Override - public TestSite doWork() throws Exception - { - RepoService.SiteInformation siteInfo = new RepoService.SiteInformation(site4_id, site4_title, site4_description, SiteVisibility.PRIVATE); - TestSite site = network2.createSite(siteInfo); - return site; - } - }, person3Id, network2.getId()); - - this.site5 = TenantUtil.runAsUserTenant(new TenantRunAsWork() - { - @Override - public TestSite doWork() throws Exception - { - RepoService.SiteInformation siteInfo = new RepoService.SiteInformation(site5_id, site5_title, site5_description, SiteVisibility.PRIVATE); - TestSite site = network2.createSite(siteInfo); - return site; - } - }, person3Id, network2.getId()); - - this.site6 = TenantUtil.runAsUserTenant(new TenantRunAsWork() - { - @Override - public TestSite doWork() throws Exception - { - RepoService.SiteInformation siteInfo = new RepoService.SiteInformation(site6_id, site6_title, site6_description, SiteVisibility.PRIVATE); - TestSite site = network2.createSite(siteInfo); - return site; - } - }, person3Id, network2.getId()); - } } diff --git a/source/test-java/org/alfresco/rest/api/tests/client/data/SiteImpl.java b/source/test-java/org/alfresco/rest/api/tests/client/data/SiteImpl.java index 700f5eefaa..0993c8cfe3 100644 --- a/source/test-java/org/alfresco/rest/api/tests/client/data/SiteImpl.java +++ b/source/test-java/org/alfresco/rest/api/tests/client/data/SiteImpl.java @@ -101,6 +101,15 @@ public class SiteImpl implements Serializable, Site, Comparable, Expec this.guid = siteInfo.getNodeRef().getId(); } + public SiteImpl(String siteId, String title, String description, String visibility) + { + super(); + this.siteId = siteId; + this.title = title; + this.description = description; + this.visibility = visibility; + } + public SiteImpl(String networkId, String siteId, String guid, String title, String description, String visibility, String type, SiteRole siteRole) {