From 3f7a3e2be19fe33267aeb5108dc05296c0c5b941 Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Mon, 14 Nov 2016 17:33:34 +0200 Subject: [PATCH 01/42] RM-4320 Upgrade RM 2.5.1 dependency to Alfresco 5.2_SNAPSHOT --- rm-community/pom.xml | 2 +- .../rm-public-services-security-context.xml | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/rm-community/pom.xml b/rm-community/pom.xml index e5ad0a3c57..a7ced592b3 100644 --- a/rm-community/pom.xml +++ b/rm-community/pom.xml @@ -23,7 +23,7 @@ - 5.1.g + 5.2.a-EA ${alfresco.version} diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml index 8b773b3c9b..6d90759e2b 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml @@ -136,9 +136,6 @@ - - - ${system.acl.maxPermissionCheckTimeMillis} From 010e79be05ee847c3bc4a06c9e7bedd65fd271bd Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Wed, 16 Nov 2016 16:53:15 +0200 Subject: [PATCH 02/42] RM-4320 Upgrade RM 2.5.1 to Alf 5.2 --- .../security/rm-method-security.properties | 1 + 1 file changed, 1 insertion(+) diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties index 350505fa84..6a5bfac349 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties @@ -127,6 +127,7 @@ rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockStatus=RM.Rea rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockType=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.checkForLock=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLocks=RM.Read.0 +rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.isLockedAndReadOnly=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.*=RM_DENY ## Multilingual Content Service From 66332f624fac2097ba44456751d2b3cff9140b5a Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Mon, 21 Nov 2016 13:27:46 +0200 Subject: [PATCH 03/42] RM 4320 Min Alfresco Repo Version should be 5.1.1 not 5.2.(alfresco.version) --- pom.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index a713d01aed..8b7bd6f8c0 100644 --- a/pom.xml +++ b/pom.xml @@ -103,6 +103,7 @@ ${project.version} + 5.1.1 AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0;IGNORECASE=TRUE false 1.7 @@ -153,9 +154,9 @@ rm.module.repo.version.min - ${alfresco.version} -- (\d+)\.(\d+).* -- $1.$2 + ${alfresco.repo.version.min} +- ([0-9\.]*[0-9]).* +- $1 false From 58c22467bb7ff730d99938caaf67be83c4657a63 Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Tue, 22 Nov 2016 14:23:09 +0200 Subject: [PATCH 04/42] Set Alfresco community version to 5.1.g --- rm-community/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rm-community/pom.xml b/rm-community/pom.xml index a7ced592b3..e5ad0a3c57 100644 --- a/rm-community/pom.xml +++ b/rm-community/pom.xml @@ -23,7 +23,7 @@ - 5.2.a-EA + 5.1.g ${alfresco.version} From 3b3decf41c6639b52b021d42832d55eaf97d892f Mon Sep 17 00:00:00 2001 From: Tom Page Date: Thu, 24 Nov 2016 16:01:06 +0000 Subject: [PATCH 05/42] RM-4456 Make unit tests work against Alfresco 5.2.b and 5.1.1. --- .../ExtendedVersionableAspectUnitTest.java | 44 ++++++++++++++++--- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/version/ExtendedVersionableAspectUnitTest.java b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/version/ExtendedVersionableAspectUnitTest.java index e06d0f51fd..5aaca155bd 100644 --- a/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/version/ExtendedVersionableAspectUnitTest.java +++ b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/version/ExtendedVersionableAspectUnitTest.java @@ -35,6 +35,8 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -56,6 +58,7 @@ import org.junit.Test; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import org.mockito.exceptions.verification.WantedButNotInvoked; import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; import org.springframework.extensions.webscripts.GUID; @@ -208,7 +211,7 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel // verify other verify(mockedNodeService).exists(nodeRef); - verify(mockedLockService).getLockStatus(nodeRef); + verifyLockServiceInteraction(); // assert the version was not created verify(mockedVersionService, never()).createVersion(eq(nodeRef), any(Map.class)); @@ -247,7 +250,7 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel // verify other verify(mockedNodeService).exists(nodeRef); - verify(mockedLockService).getLockStatus(nodeRef); + verifyLockServiceInteraction(); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_VERSIONABLE); // assert the version was not created @@ -291,7 +294,7 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel // verify other verify(mockedNodeService).exists(nodeRef); - verify(mockedLockService).getLockStatus(nodeRef); + verifyLockServiceInteraction(); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_VERSIONABLE); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_TEMPORARY); @@ -340,7 +343,7 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel // verify other verify(mockedNodeService).exists(nodeRef); - verify(mockedLockService).getLockStatus(nodeRef); + verifyLockServiceInteraction(); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_VERSIONABLE); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_TEMPORARY); verify(mockedAlfrescoTransactionSupport).getResource(KEY_VERSIONED_NODEREFS); @@ -396,7 +399,7 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel // verify other verify(mockedNodeService).exists(nodeRef); - verify(mockedLockService).getLockStatus(nodeRef); + verifyLockServiceInteraction(); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_VERSIONABLE); verify(mockedNodeService).hasAspect(nodeRef, ContentModel.ASPECT_TEMPORARY); verify(mockedAlfrescoTransactionSupport, times(2)).getResource(KEY_VERSIONED_NODEREFS); @@ -406,4 +409,35 @@ public class ExtendedVersionableAspectUnitTest implements RecordsManagementModel verify(mockedVersionService).createVersion(eq(nodeRef), any(Map.class)); } + /** Check the lock service had the correct interaction, which is different for different versions of Alfresco. */ + private void verifyLockServiceInteraction() + { + try + { + // This check should pass for Alfresco 5.1.1. + verify(mockedLockService).getLockStatus(nodeRef); + } + catch(AssertionError e) + { + // Use reflection to determine whether a method has been called on the mock (and make sure the code still + // compiles against 5.1.1). + try + { + // If we're using Alfresco 5.2 then isLockedAndReadOnly should have been called. + Method method = LockService.class.getDeclaredMethod("isLockedAndReadOnly", NodeRef.class); + method.invoke(verify(mockedLockService), nodeRef); + } + catch (Exception someError) + { + if (someError instanceof InvocationTargetException && + someError.getCause() instanceof WantedButNotInvoked) + { + // Re-throw the original Mockito exception. + throw (WantedButNotInvoked) someError.getCause(); + } + // This should never happen if the test is written correctly. + throw new RuntimeException("Unexpected exception - please check test.", someError); + } + } + } } From 1f5c5c0c19583a10ed33f4358e581efdbf323c38 Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Fri, 25 Nov 2016 16:11:24 +0200 Subject: [PATCH 06/42] Revert "Merge branch 'feature-2.5/Merge_RM4320_to_V2.5' into 'release/V2.5'" This reverts commit 21b0ad9eff75619749efb7b5fc3f86e963c1d7d1, reversing changes made to d90c19522e8844ef8a11d2af3f84891bbe1bf71a. --- pom.xml | 7 +++---- .../rm-public-services-security-context.xml | 3 +++ .../security/rm-method-security.properties | 1 - 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 8b7bd6f8c0..a713d01aed 100644 --- a/pom.xml +++ b/pom.xml @@ -103,7 +103,6 @@ ${project.version} - 5.1.1 AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0;IGNORECASE=TRUE false 1.7 @@ -154,9 +153,9 @@ rm.module.repo.version.min - ${alfresco.repo.version.min} -- ([0-9\.]*[0-9]).* -- $1 + ${alfresco.version} +- (\d+)\.(\d+).* +- $1.$2 false diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml index 6d90759e2b..8b773b3c9b 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml @@ -136,6 +136,9 @@ + + + ${system.acl.maxPermissionCheckTimeMillis} diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties index 6a5bfac349..350505fa84 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties @@ -127,7 +127,6 @@ rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockStatus=RM.Rea rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockType=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.checkForLock=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLocks=RM.Read.0 -rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.isLockedAndReadOnly=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.*=RM_DENY ## Multilingual Content Service From 952148a0ca5103a8a634afee591e90956f019bef Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Fri, 25 Nov 2016 17:17:55 +0200 Subject: [PATCH 07/42] Revert "Revert "Merge branch 'feature-2.5/Merge_RM4320_to_V2.5' into 'release/V2.5'"" This reverts commit 1f5c5c0c19583a10ed33f4358e581efdbf323c38. --- pom.xml | 7 ++++--- .../rm-public-services-security-context.xml | 3 --- .../security/rm-method-security.properties | 1 + 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index a713d01aed..8b7bd6f8c0 100644 --- a/pom.xml +++ b/pom.xml @@ -103,6 +103,7 @@ ${project.version} + 5.1.1 AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0;IGNORECASE=TRUE false 1.7 @@ -153,9 +154,9 @@ rm.module.repo.version.min - ${alfresco.version} -- (\d+)\.(\d+).* -- $1.$2 + ${alfresco.repo.version.min} +- ([0-9\.]*[0-9]).* +- $1 false diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml index 8b773b3c9b..6d90759e2b 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml @@ -136,9 +136,6 @@ - - - ${system.acl.maxPermissionCheckTimeMillis} diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties index 350505fa84..6a5bfac349 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/security/rm-method-security.properties @@ -127,6 +127,7 @@ rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockStatus=RM.Rea rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLockType=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.checkForLock=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.getLocks=RM.Read.0 +rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.isLockedAndReadOnly=RM.Read.0 rm.methodsecurity.org.alfresco.service.cmr.lock.LockService.*=RM_DENY ## Multilingual Content Service From 64f41ee66f0167608cea48016de2864c9d01483f Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Fri, 25 Nov 2016 17:36:29 +0200 Subject: [PATCH 08/42] RM-4359 - added records endpoint with get/update content requests --- .../rm-public-rest-context.xml | 4 + .../rest/api/nodes/RecordsEntityResource.java | 105 ++++++++++++ .../main/webapp/definitions/ig-core-api.yaml | 153 +++++++++++++++++- 3 files changed, 261 insertions(+), 1 deletion(-) create mode 100644 rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml index 07f5823e4f..f4e068dc03 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml @@ -49,6 +49,10 @@ + + + + diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java new file mode 100644 index 0000000000..3887a0c15e --- /dev/null +++ b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java @@ -0,0 +1,105 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2016 Alfresco Software Limited + * %% + * This file is part of the Alfresco software. + * - + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * - + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * - + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * - + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + * #L% + */ + +package org.alfresco.rm.rest.api.nodes; + +import java.io.InputStream; + +import org.alfresco.rest.api.model.Node; +import org.alfresco.rest.framework.BinaryProperties; +import org.alfresco.rest.framework.WebApiDescription; +import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException; +import org.alfresco.rest.framework.resource.EntityResource; +import org.alfresco.rest.framework.resource.actions.interfaces.BinaryResourceAction; +import org.alfresco.rest.framework.resource.content.BasicContentInfo; +import org.alfresco.rest.framework.resource.content.BinaryResource; +import org.alfresco.rest.framework.resource.parameters.Parameters; +import org.alfresco.rm.rest.api.RMNodes; +import org.springframework.beans.factory.InitializingBean; + +/** + * An implementation of an Entity Resource for a record + * + * @author Ana Bozianu + * @since 2.6 + */ +@EntityResource(name="records", title = "Records") +public class RecordsEntityResource implements BinaryResourceAction.Update, + BinaryResourceAction.Read, + InitializingBean +{ + + private RMNodes nodes; + + public void setNodes(RMNodes nodes) + { + this.nodes = nodes; + } + + @Override + public void afterPropertiesSet() throws Exception + { + + } + + /** + * Download content + * + * @param entityId + * @param parameters {@link Parameters} + * @return + * @throws EntityNotFoundException + */ + @Override + @WebApiDescription(title = "Download content", description = "Download content") + @BinaryProperties({"content"}) + public BinaryResource readProperty(String entityId, Parameters parameters) throws EntityNotFoundException + { + return nodes.getContent(entityId, parameters, true); + } + + /** + * Upload new version of content + * + * This allow binary content update of an existing record. + * + * Note: alternatively, can upload via POST (multipart/form-data) with existing file name and form "overwrite=true". + * + * @param entityId + * @param contentInfo Basic information about the content stream + * @param stream An inputstream + * @param parameters + * @return + */ + @Override + @WebApiDescription(title = "Upload content", description = "Upload content") + @BinaryProperties({"content"}) + public Node updateProperty(String entityId, BasicContentInfo contentInfo, InputStream stream, Parameters parameters) + { + return nodes.updateContent(entityId, contentInfo, stream, parameters); + } +} diff --git a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml index 447f030e15..a99942b387 100644 --- a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml +++ b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml @@ -19,6 +19,8 @@ tags: description: Retrieve and manage fileplan components - name: ig-sites description: Retrieve and manage the RM site + - name: records + description: Perform record specific operations paths: '/fileplan-components/{fileplanComponentId}': get: @@ -547,6 +549,123 @@ paths: description: Unexpected error schema: $ref: '#/definitions/Error' + '/records/{recordId}/content': + get: + x-alfresco-since: "5.2" + tags: + - records + summary: Get record content + description: | + + Gets the content of the record with identifier **recordId**. + operationId: getRecordContent + parameters: + - $ref: '#/parameters/recordIdParam' + - $ref: '#/parameters/attachmentParam' + - $ref: '#/parameters/ifModifiedSinceHeader' + responses: + '200': + description: Successful response + '304': + description: Content has not been modified since the date provided in the If-Modified-Since header + '400': + description: | + Invalid parameter: **nodeId** is not a valid format, or is not a file + '401': + description: Authentication failed + '404': + description: | + **nodeId** does not exist + default: + description: Unexpected error + schema: + $ref: '#/definitions/Error' + put: + x-alfresco-since: "5.2" + tags: + - records + summary: Update record content + description: | + Updates the content of the record with identifier **recordId**. + + The request body for this endpoint can be any text or binary stream. + + The **majorVersion** and **comment** parameters can be used to control versioning behaviour. If the content is versionable, + a new minor version is created by default. + + Optionally a new **name** parameter can also be specified that must be unique within the parent folder. If specified and valid then this + will rename the node. If invalid then an error is returned and the content is not updated. + + **Note:** This API method accepts any content type, but for testing with this tool text based content can be provided. + This is because the OpenAPI Specification does not allow a wildcard to be provided or the ability for + tooling to accept an arbitrary file. + operationId: updateRecordContent + parameters: + - $ref: '#/parameters/recordIdParam' + - name: majorVersion + in: query + description: | + If **true**, create a major version. + Setting this parameter also enables versioning of this node, if it is not already versioned. + required: false + type: boolean + default: false + - name: comment + in: query + description: | + Add a version comment which will appear in version history. + Setting this parameter also enables versioning of this node, if it is not already versioned. + required: false + type: string + - name: name + in: query + description: | + Optional new name. This should include the file extension. + The name must not contain spaces or the following special characters: * " < > \ / ? : and |. + The character `.` must not be used at the end of the name. + required: false + type: string + pattern: "^(?!(.*[\\\"\\*\\\\\\>\\<\\?\\/\\:\\|]+.*)|(.*[\\.]?.*[\\.]+$)|(.*[ ]+$))" + - $ref: '#/parameters/IGNodeEntryIncludeParam' + - $ref: '#/parameters/fieldsParam' + - in: body + name: contentBodyUpdate + description: The binary content + required: true + schema: + type: string + format: binary + produces: + - application/json + consumes: + - application/octet-stream + responses: + '200': + description: Successful response + schema: + $ref: '#/definitions/IGNodeEntry' + '400': + description: | + Invalid parameter: **recordId** is not a valid format, or is not a file + '401': + description: Authentication failed + '403': + description: Current user does not have permission to update **recordId** + '404': + description: | + **recordId** does not exist + '409': + description: Optional new name clashes with an existing node in the current parent folder + '413': + description: Content exceeds individual file size limit (configured for network/system) + '422': + description: Model integrity exception including a file name containing invalid characters + '507': + description: Content exceeds overall storage quota limit configured for the network/system + default: + description: Unexpected error + schema: + $ref: '#/definitions/Error' parameters: fileplanComponentIdWithAliasParam: name: fileplanComponentId @@ -609,13 +728,18 @@ parameters: items: type: string collectionFormat: csv - ## Core definition fileplanComponentIdParam: name: fileplanComponentId in: path description: The identifier of a fileplan compoment. required: true type: string + recordIdParam: + name: recordId + in: path + description: The identifier of a record. + required: true + type: string ## Core definition fieldsParam: name: fields @@ -670,6 +794,33 @@ parameters: items: type: string collectionFormat: csv + # Core definition + attachmentParam: + name: attachment + in: query + description: | + **true** enables a web browser to download the file as an attachment. + **false** means a web browser may preview the file in a new tab or window, but not + download the file. + + You can only set this parameter to **false** if the content type of the file is in the supported list; + for example, certain image files and PDF files. + + If the content type is not supported for preview, then a value of **false** is ignored, and + the attachment will be returned in the response. + required: false + default: true + type: boolean + # Core definition + ifModifiedSinceHeader: + name: If-Modified-Since + in: header + description: | + Only returns the content if it has been modified since the date provided. + Use the date format defined by HTTP. For example, `Wed, 09 Mar 2016 16:56:34 GMT`. + required: false + type: string + format: date-time definitions: IGNodeEntry: type: object From ce0a9d8b2ffa369a6fff84db7d69611176702000 Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Sat, 26 Nov 2016 09:09:30 +0200 Subject: [PATCH 09/42] RM-4320 Remove alfresco min rm version --- pom.xml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 8b7bd6f8c0..ecf6ff66d2 100644 --- a/pom.xml +++ b/pom.xml @@ -103,7 +103,6 @@ ${project.version} - 5.1.1 AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0;IGNORECASE=TRUE false 1.7 @@ -154,9 +153,9 @@ rm.module.repo.version.min - ${alfresco.repo.version.min} -- ([0-9\.]*[0-9]).* -- $1 + ${alfresco.version} + (\d+)\.(\d+).* + $1.$2 false From 3b1c13b626b88728a8ae6a13eb1e058e4769c010 Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Tue, 29 Nov 2016 17:44:44 +0200 Subject: [PATCH 10/42] RM-4359 - added mandatory check and javadoc --- .../rest/api/nodes/RecordsEntityResource.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java index 3887a0c15e..215a43f49a 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/RecordsEntityResource.java @@ -39,6 +39,7 @@ import org.alfresco.rest.framework.resource.content.BasicContentInfo; import org.alfresco.rest.framework.resource.content.BinaryResource; import org.alfresco.rest.framework.resource.parameters.Parameters; import org.alfresco.rm.rest.api.RMNodes; +import org.alfresco.util.ParameterCheck; import org.springframework.beans.factory.InitializingBean; /** @@ -63,23 +64,23 @@ public class RecordsEntityResource implements BinaryResourceAction.Update, @Override public void afterPropertiesSet() throws Exception { - + ParameterCheck.mandatory("nodes", this.nodes); } /** * Download content * - * @param entityId + * @param recordId the id of the record to get the content from * @param parameters {@link Parameters} - * @return + * @return binary content resource * @throws EntityNotFoundException */ @Override @WebApiDescription(title = "Download content", description = "Download content") @BinaryProperties({"content"}) - public BinaryResource readProperty(String entityId, Parameters parameters) throws EntityNotFoundException + public BinaryResource readProperty(String recordId, Parameters parameters) throws EntityNotFoundException { - return nodes.getContent(entityId, parameters, true); + return nodes.getContent(recordId, parameters, true); } /** @@ -89,17 +90,17 @@ public class RecordsEntityResource implements BinaryResourceAction.Update, * * Note: alternatively, can upload via POST (multipart/form-data) with existing file name and form "overwrite=true". * - * @param entityId + * @param recordId the id of the record to set the content for * @param contentInfo Basic information about the content stream - * @param stream An inputstream - * @param parameters - * @return + * @param stream an inputstream representing the new content of the node + * @param parameters {@link Parameters} + * @return information about the record that has been updated */ @Override @WebApiDescription(title = "Upload content", description = "Upload content") @BinaryProperties({"content"}) - public Node updateProperty(String entityId, BasicContentInfo contentInfo, InputStream stream, Parameters parameters) + public Node updateProperty(String recordId, BasicContentInfo contentInfo, InputStream stream, Parameters parameters) { - return nodes.updateContent(entityId, contentInfo, stream, parameters); + return nodes.updateContent(recordId, contentInfo, stream, parameters); } } From 6bb93c669887d03829fb3db7c083afcba6ec1c54 Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Wed, 30 Nov 2016 12:16:49 +0200 Subject: [PATCH 11/42] RM-4499 - added positive number constraint in the model definition --- .../org_alfresco_module_rm/model/recordsModel.xml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml index 70bec9a312..09e10626ca 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml @@ -304,10 +304,16 @@ false 1 - true - false - false - + true + false + false + + + + 0 + 2147483647 + + From 814c349f62eb8ebf5d88bc9a67a6a25e115f74ee Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Wed, 30 Nov 2016 14:21:48 +0200 Subject: [PATCH 12/42] RM-4499 - added check for physical size too --- .../org_alfresco_module_rm/model/recordsModel.xml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml index 09e10626ca..29e46aefb2 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml @@ -292,10 +292,16 @@ d:int false - true - false - false - + true + false + false + + + + 0 + 2147483647 + + From b52ec09f8de85b81ade1e16c1c0e3e764f667d67 Mon Sep 17 00:00:00 2001 From: Tuna Aksoy Date: Wed, 30 Nov 2016 13:31:27 +0000 Subject: [PATCH 13/42] Changed "alfresco.installer.host" value from "nightlybuilds" to "releases". If needed that can be set in the builds but normally we will depend on released versions of Alfresco. --- rm-automation/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rm-automation/pom.xml b/rm-automation/pom.xml index 9b8f5ee2e1..78c62c3a3b 100644 --- a/rm-automation/pom.xml +++ b/rm-automation/pom.xml @@ -24,7 +24,7 @@ - nightlybuilds + releases 1.8 1.8 testng.xml From 408d81d9a952ffd664f36b358291a2867c3e0db0 Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Wed, 30 Nov 2016 16:32:41 +0200 Subject: [PATCH 14/42] RM-4503 - documented 403 error for read operations --- .../src/main/webapp/definitions/ig-core-api.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml index a99942b387..120b40c21b 100644 --- a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml +++ b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml @@ -49,6 +49,8 @@ paths: Invalid parameter: **fileplanComponentId** is not a valid format '401': description: If authentication fails + '403': + description: If current user does not have permission to read **fileplanComponentId** '404': description: If **fileplanComponentId** does not exist default: @@ -182,6 +184,8 @@ paths: $ref: '#/definitions/IGNodeAssociationPaging' '401': description: If authentication fails + '403': + description: If current user does not have permission to read **fileplanComponentId** '404': description: If **fileplanComponentId** does not exist default: From 1da53845837fbb3f747f4ea1635b53b606363296 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Wed, 30 Nov 2016 14:59:51 +0000 Subject: [PATCH 15/42] RM-4391: Test tidied up. --- .../fileplancomponents/UnfiledRecordsFolderTests.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/UnfiledRecordsFolderTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/UnfiledRecordsFolderTests.java index d074f1c8e8..74e669d8ce 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/UnfiledRecordsFolderTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/UnfiledRecordsFolderTests.java @@ -100,7 +100,7 @@ public class UnfiledRecordsFolderTests extends BaseRestTest public void createRootUnfiledRecordsFolder() throws Exception { // Authenticate with admin user - RestWrapper restWrapper = filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); String folderName = "Folder " + getRandomAlphanumeric(); String folderTitle = folderName + " Title"; @@ -142,7 +142,7 @@ public class UnfiledRecordsFolderTests extends BaseRestTest ) public void onlyRecordFoldersCanBeCreatedAtUnfiledRecordsRoot(FilePlanComponentType componentType) { - RestWrapper restWrapper = filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); String folderName = "Folder " + getRandomAlphanumeric(); String folderTitle = folderName + " Title"; From a85d9f5290812333b7c77a1010cf7849d7396677 Mon Sep 17 00:00:00 2001 From: Tom Page Date: Thu, 1 Dec 2016 09:21:50 +0000 Subject: [PATCH 16/42] RM-4493 Add javax.servlet-api "provided" dependency to community. This is required to build the community code against Alfresco 5.2-EA, which we do as part of the enterprise release build. --- rm-community/rm-community-repo/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rm-community/rm-community-repo/pom.xml b/rm-community/rm-community-repo/pom.xml index aa6907c0a7..1d4b089e99 100644 --- a/rm-community/rm-community-repo/pom.xml +++ b/rm-community/rm-community-repo/pom.xml @@ -268,6 +268,12 @@ ${alfresco.groupId} alfresco-remote-api + + javax.servlet + javax.servlet-api + 3.1.0 + provided + io.takari.junit takari-cpsuite From 2f2e402a334aaec02cb6d5ccf1eb14cd5d53946b Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 10:14:07 +0000 Subject: [PATCH 17/42] RM-4391: added parameters in POST and PUT --- .../rm/community/requests/FilePlanComponentAPI.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java index 0ba49263ab..f90d9e767c 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java @@ -123,8 +123,9 @@ public class FilePlanComponentAPI extends RestAPI return usingRestWrapper().processModel(FilePlanComponent.class, requestWithBody( POST, toJson(filePlanComponentModel), - "fileplan-components/{fileplanComponentId}/children", - parentId + "fileplan-components/{fileplanComponentId}/children?{parameters}", + parentId, + getParameters() )); } @@ -152,8 +153,9 @@ public class FilePlanComponentAPI extends RestAPI return usingRestWrapper().processModel(FilePlanComponent.class, requestWithBody( PUT, toJson(filePlanComponent), - "fileplan-components/{fileplanComponentId}", - filePlanComponentId + "fileplan-components/{fileplanComponentId}?{parameters}", + filePlanComponentId, + getParameters() )); } From cf49e51ebaf0cf043cc1b6bea863a77cb72f9523 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 10:39:06 +0000 Subject: [PATCH 18/42] RM-4391: Support for non-electronic records. --- .../fileplancomponents/FilePlanComponent.java | 3 + .../FilePlanComponentContent.java | 98 +++++++++++++++++ .../FilePlanComponentFields.java | 15 ++- .../FilePlanComponentProperties.java | 100 ++++++++++++++++++ .../FilePlanComponentType.java | 3 +- 5 files changed, 215 insertions(+), 4 deletions(-) create mode 100644 rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponent.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponent.java index 8342ce9661..c74034ed5a 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponent.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponent.java @@ -85,6 +85,9 @@ public class FilePlanComponent @JsonProperty (value = ALLOWABLE_OPERATIONS) private List allowableOperations; + @JsonProperty (required = false) + private FilePlanComponentContent content; + private FilePlanComponentPath path; @JsonProperty (required = true) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java new file mode 100644 index 0000000000..9c90c35156 --- /dev/null +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java @@ -0,0 +1,98 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2016 Alfresco Software Limited + * %% + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + * #L% + */ +package org.alfresco.rest.rm.community.model.fileplancomponents; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * POJO for FilePlanComponent content field + * @author Kristijan Conkas + * @since 2.6 + */ +public class FilePlanComponentContent +{ + @JsonProperty (required = true) + private String encoding; + + @JsonProperty (required = true) + private String mimeType; + + @JsonProperty (required = true) + private String mimeTypeName; + + @JsonProperty (required = true) + private Integer sizeInBytes; + + /** + * @return the encoding + */ + public String getEncoding() + { + return this.encoding; + } + + /** + * @param encoding the encoding to set + */ + public void setEncoding(String encoding) + { + this.encoding = encoding; + } + + /** + * @return the mimeType + */ + public String getMimeType() + { + return this.mimeType; + } + + /** + * @param mimeType the mimeType to set + */ + public void setMimeType(String mimeType) + { + this.mimeType = mimeType; + } + + /** + * @return the mimeTypeName + */ + public String getMimeTypeName() + { + return this.mimeTypeName; + } + + /** + * @param mimeTypeName the mimeTypeName to set + */ + public void setMimeTypeName(String mimeTypeName) + { + this.mimeTypeName = mimeTypeName; + } + + /** + * @return the sizeInBytes + */ + public Integer getSizeInBytes() + { + return this.sizeInBytes; + } + + /** + * @param sizeInBytes the sizeInBytes to set + */ + public void setSizeInBytes(Integer sizeInBytes) + { + this.sizeInBytes = sizeInBytes; + } +} diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java index 98f38afd36..f839ffda9a 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java @@ -45,7 +45,16 @@ public class FilePlanComponentFields public static final String PROPERTIES_DESCRIPTION = "cm:description"; public static final String PROPERTIES_SUPPLEMENTAL_MARKING_LIST = "rmc:supplementalMarkingList"; public static final String ALLOWABLE_OPERATIONS = "allowableOperations"; - public static final String IS_CLOSED="isClosed"; - public static final String PROPERTIES_REVIEW_PERIOD="rma:reviewPeriod"; - public static final String PROPERTIES_LOCATION="rma:location"; + public static final String IS_CLOSED = "isClosed"; + public static final String PROPERTIES_REVIEW_PERIOD = "rma:reviewPeriod"; + public static final String PROPERTIES_LOCATION = "rma:location"; + + // for non-electronic records + public static final String PROPERTIES_BOX = "rma:box"; + public static final String PROPERTIES_FILE = "rma:file"; + public static final String PROPERTIES_NUMBER_OF_COPIES = "rma:numberOfCopies"; + public static final String PROPERTIES_PHYSICAL_SIZE = "rma:physicalSize"; + public static final String PROPERTIES_SHELF = "rma:shelf"; + public static final String PROPERTIES_STORAGE_LOCATION = "rma:storageLocation"; + } diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java index ab8fbcd253..261bf546e0 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java @@ -26,10 +26,15 @@ */ package org.alfresco.rest.rm.community.model.fileplancomponents; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_BOX; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_DESCRIPTION; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_FILE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_HOLD_REASON; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_LOCATION; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_NUMBER_OF_COPIES; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_PHYSICAL_SIZE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_REVIEW_PERIOD; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_SHELF; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_SUPPLEMENTAL_MARKING_LIST; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_TITLE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_VITAL_RECORD_INDICATOR; @@ -74,6 +79,22 @@ public class FilePlanComponentProperties @JsonProperty(PROPERTIES_LOCATION) private String location; + + @JsonProperty(value = PROPERTIES_BOX, required = false) + private String box; + + @JsonProperty(value = PROPERTIES_FILE, required = false) + private String file; + + @JsonProperty(value = PROPERTIES_SHELF, required = false) + private String shelf; + + @JsonProperty(value = PROPERTIES_NUMBER_OF_COPIES, required = false) + private Integer numberOfCopies; + + @JsonProperty(value = PROPERTIES_PHYSICAL_SIZE, required = false) + private Integer physicalSize; + public FilePlanComponentProperties(String title, String description) { @@ -203,4 +224,83 @@ public class FilePlanComponentProperties this.location = location; } + /** + * @return the box + */ + public String getBox() + { + return this.box; + } + + /** + * @param box the box to set + */ + public void setBox(String box) + { + this.box = box; + } + + /** + * @return the file + */ + public String getFile() + { + return this.file; + } + + /** + * @param file the file to set + */ + public void setFile(String file) + { + this.file = file; + } + + /** + * @return the shelf + */ + public String getShelf() + { + return this.shelf; + } + + /** + * @param shelf the shelf to set + */ + public void setShelf(String shelf) + { + this.shelf = shelf; + } + + /** + * @return the numberOfCopies + */ + public Integer getNumberOfCopies() + { + return this.numberOfCopies; + } + + /** + * @param numberOfCopies the numberOfCopies to set + */ + public void setNumberOfCopies(Integer numberOfCopies) + { + this.numberOfCopies = numberOfCopies; + } + + /** + * @return the physicalSize + */ + public Integer getPhysicalSize() + { + return this.physicalSize; + } + + /** + * @param physicalSize the physicalSize to set + */ + public void setPhysicalSize(Integer physicalSize) + { + this.physicalSize = physicalSize; + } } diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentType.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentType.java index 1308a68295..4398087e56 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentType.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentType.java @@ -46,7 +46,8 @@ public enum FilePlanComponentType TRANSFER_CONTAINER_TYPE("rma:transferContainer"), UNFILED_CONTAINER_TYPE("rma:unfiledRecordContainer"), FOLDER_TYPE("cm:folder"), - CONTENT_TYPE("cm:content"); + CONTENT_TYPE("cm:content"), + NON_ELECTRONIC_RECORD_TYPE("rma:nonElectronicDocument"); private String type; From f63185149a5105d6046c67909d625ef4f4268b75 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 10:39:33 +0000 Subject: [PATCH 19/42] RM-4391: Added tests --- .../NonElectronicRecordTests.java | 184 ++++++++++++++++++ 1 file changed, 184 insertions(+) create mode 100644 rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java new file mode 100644 index 0000000000..1528f02404 --- /dev/null +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -0,0 +1,184 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2016 Alfresco Software Limited + * %% + * This file is part of the Alfresco software. + * - + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * - + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * - + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * - + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + * #L% + */ +package org.alfresco.rest.rm.community.fileplancomponents; + +import static java.util.Arrays.asList; + +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.IS_CLOSED; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; +import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; +import static org.springframework.http.HttpStatus.CREATED; +import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertFalse; + +import java.util.Random; + +import org.alfresco.rest.rm.community.base.BaseRestTest; +import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; +import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; +import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; +import org.alfresco.utility.data.DataUser; +import org.springframework.beans.factory.annotation.Autowired; +import org.testng.annotations.Test; + +/** + * Create/File Non-Electronic Record into Unfiled Record Container/Record Folder ReST API tests + * + * @author Kristijan Conkas + * @since 2.6 + */ +public class NonElectronicRecordTests extends BaseRestTest +{ + @Autowired + private FilePlanComponentAPI filePlanComponentAPI; + + @Autowired + private DataUser dataUser; + + + /** + * Given a parent container that is NOT a record folder or an unfiled record folder + * When I try to create a non-electronic record within the parent container + * Then nothing happens + * And an error is reported + * @throws Exception + */ + @Test(description = "Non-electronic record can't be created as a child of invalid parent Id") + public void noCreateForInvalidParentIds() throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + // non-electronic record object to be used for create tests + FilePlanComponent nonElectronicRecord = new FilePlanComponent( + "Record " + getRandomAlphanumeric(), + NON_ELECTRONIC_RECORD_TYPE.toString(), + new FilePlanComponentProperties()); + + // create record category, non-electronic records can't be its children + FilePlanComponent recordCategory = filePlanComponentAPI.createFilePlanComponent( + new FilePlanComponent("Category " + getRandomAlphanumeric(), + RECORD_CATEGORY_TYPE.toString(), + new FilePlanComponentProperties()), + FILE_PLAN_ALIAS.toString()); + + // iterate through all invalid parent containers and try to create/file an electronic record + asList(FILE_PLAN_ALIAS.toString(), TRANSFERS_ALIAS.toString(), HOLDS_ALIAS.toString(), recordCategory.getId()) + .stream() + .forEach(id -> + { + try + { + filePlanComponentAPI.createFilePlanComponent(nonElectronicRecord, id); + } + catch (Exception error) + { + } + + // Verify the status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); + }); + } + + /** + * Given a parent container that is a record folder + * And the record folder is open + * When I try to create a non-electronic record within the parent container + * Then the non-electronic record is created + * And the details of the new record are returned + * @throws Exception if record can't be created + */ + @Test(description = "Non-electronic record can be created in open record folder") + public void canCreateInOpenFolder() throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + // create root category + FilePlanComponent recordCategory = filePlanComponentAPI.createFilePlanComponent( + new FilePlanComponent("Category " + getRandomAlphanumeric(), + RECORD_CATEGORY_TYPE.toString(), + new FilePlanComponentProperties()), + FILE_PLAN_ALIAS.toString()); + + // create record folder as a child of recordCategory + FilePlanComponent recordFolder = filePlanComponentAPI.withParams("include=" + IS_CLOSED) + .createFilePlanComponent(new FilePlanComponent("Folder " + getRandomAlphanumeric(), + RECORD_FOLDER_TYPE.toString(), + new FilePlanComponentProperties()), + recordCategory.getId()); + + // the folder should be open + assertFalse(recordFolder.isClosed()); + + String title = "Title " + getRandomAlphanumeric(); + String description = "Description " + getRandomAlphanumeric(); + String box = "Box "+ getRandomAlphanumeric(); + String file = "File " + getRandomAlphanumeric(); + String shelf = "Shelf " + getRandomAlphanumeric(); + String location = "Location " + getRandomAlphanumeric(); + + Random random = new Random(); + Integer copies = random.nextInt(Integer.MAX_VALUE); + Integer size = random.nextInt(Integer.MAX_VALUE); + + // set values of all available properties + FilePlanComponentProperties properties = new FilePlanComponentProperties(title, description); + properties.setBox(box); + properties.setFile(file); + properties.setShelf(shelf); + properties.setLocation(location); + properties.setNumberOfCopies(copies); + properties.setPhysicalSize(size); + + // create non-electronic record + String nonElectronicId = filePlanComponentAPI.createFilePlanComponent( + new FilePlanComponent("Record " + getRandomAlphanumeric(), + NON_ELECTRONIC_RECORD_TYPE.toString(), + properties), + recordFolder.getId()).getId(); + + // verify the create request status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(CREATED); + + // get newly created non-electonic record and verify its properties + FilePlanComponent nonElectronicRecord = filePlanComponentAPI.getFilePlanComponent(nonElectronicId); + + assertEquals(title, nonElectronicRecord.getProperties().getTitle()); + assertEquals(description, nonElectronicRecord.getProperties().getDescription()); + assertEquals(box, nonElectronicRecord.getProperties().getBox()); + assertEquals(file, nonElectronicRecord.getProperties().getFile()); + assertEquals(shelf, nonElectronicRecord.getProperties().getShelf()); + assertEquals(location, nonElectronicRecord.getProperties().getLocation()); + assertEquals(copies, nonElectronicRecord.getProperties().getNumberOfCopies()); + assertEquals(size, nonElectronicRecord.getProperties().getPhysicalSize()); + } +} From ab6566da4e9be075d088bf58a289c0f73c798010 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 11:29:47 +0000 Subject: [PATCH 20/42] RM-4391: Closed folder creation test. --- .../FilePlanComponentFields.java | 1 + .../FilePlanComponentProperties.java | 20 ++++++ .../rest/rm/community/base/BaseRestTest.java | 21 ++++++ .../NonElectronicRecordTests.java | 70 ++++++++++++++----- 4 files changed, 96 insertions(+), 16 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java index f839ffda9a..11b14c1906 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentFields.java @@ -48,6 +48,7 @@ public class FilePlanComponentFields public static final String IS_CLOSED = "isClosed"; public static final String PROPERTIES_REVIEW_PERIOD = "rma:reviewPeriod"; public static final String PROPERTIES_LOCATION = "rma:location"; + public static final String PROPERTIES_IS_CLOSED = "rma:isClosed"; // not to be confused with IS_CLOSED! // for non-electronic records public static final String PROPERTIES_BOX = "rma:box"; diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java index 261bf546e0..9c17419680 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentProperties.java @@ -30,6 +30,7 @@ import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanCo import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_DESCRIPTION; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_FILE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_HOLD_REASON; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_IS_CLOSED; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_LOCATION; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_NUMBER_OF_COPIES; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.PROPERTIES_PHYSICAL_SIZE; @@ -80,6 +81,9 @@ public class FilePlanComponentProperties @JsonProperty(PROPERTIES_LOCATION) private String location; + @JsonProperty(value = PROPERTIES_IS_CLOSED, required = false) + private Boolean isClosed; + @JsonProperty(value = PROPERTIES_BOX, required = false) private String box; @@ -303,4 +307,20 @@ public class FilePlanComponentProperties { this.physicalSize = physicalSize; } + + /** + * @return the isClosed + */ + public Boolean getIsClosed() + { + return this.isClosed; + } + + /** + * @param isClosed the isClosed to set + */ + public void setIsClosed(Boolean isClosed) + { + this.isClosed = isClosed; + } } diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 7eade80baa..601d1437e2 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -35,6 +35,7 @@ import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanCo import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.UNFILED_RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.model.site.RMSiteCompliance.STANDARD; import static org.springframework.http.HttpStatus.CREATED; +import static org.springframework.http.HttpStatus.OK; import com.jayway.restassured.RestAssured; @@ -190,4 +191,24 @@ public class BaseRestTest extends RestTest return fpc; } + /** + * Helper method to close folder + * @param folderToClose + * @return + * @throws Exception + */ + public FilePlanComponent closeFolder(String folderId) throws Exception + { + RestWrapper restWrapper = filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + // build fileplan component + properties for update request + FilePlanComponentProperties properties = new FilePlanComponentProperties(); + properties.setIsClosed(true); + FilePlanComponent filePlanComponent = new FilePlanComponent(); + filePlanComponent.setProperties(properties); + + FilePlanComponent updatedComponent = filePlanComponentAPI.updateFilePlanComponent(filePlanComponent, folderId); + restWrapper.assertStatusCodeIs(OK); + return updatedComponent; + } } \ No newline at end of file diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 1528f02404..257548c797 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -121,24 +121,12 @@ public class NonElectronicRecordTests extends BaseRestTest public void canCreateInOpenFolder() throws Exception { filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - - // create root category - FilePlanComponent recordCategory = filePlanComponentAPI.createFilePlanComponent( - new FilePlanComponent("Category " + getRandomAlphanumeric(), - RECORD_CATEGORY_TYPE.toString(), - new FilePlanComponentProperties()), - FILE_PLAN_ALIAS.toString()); - - // create record folder as a child of recordCategory - FilePlanComponent recordFolder = filePlanComponentAPI.withParams("include=" + IS_CLOSED) - .createFilePlanComponent(new FilePlanComponent("Folder " + getRandomAlphanumeric(), - RECORD_FOLDER_TYPE.toString(), - new FilePlanComponentProperties()), - recordCategory.getId()); + FilePlanComponent recordFolder = createFolderInFilePlan(); // the folder should be open - assertFalse(recordFolder.isClosed()); + assertFalse(recordFolder.getProperties().getIsClosed()); + // use these properties for non-electronic record to be created String title = "Title " + getRandomAlphanumeric(); String description = "Description " + getRandomAlphanumeric(); String box = "Box "+ getRandomAlphanumeric(); @@ -180,5 +168,55 @@ public class NonElectronicRecordTests extends BaseRestTest assertEquals(location, nonElectronicRecord.getProperties().getLocation()); assertEquals(copies, nonElectronicRecord.getProperties().getNumberOfCopies()); assertEquals(size, nonElectronicRecord.getProperties().getPhysicalSize()); - } + } + + /** + * Given a parent container that is a record folder + * And the record folder is closed + * When I try to create a non-electronic record within the parent container + * Then nothing happens + * And an error is reported + * @throws Exception on failed component creation + */ + @Test(description = "Non-electronic record can't be created in closed record folder") + public void noCreateInClosedFolder() throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + FilePlanComponent recordFolder = createFolderInFilePlan(); + + // the folder should be open + assertFalse(recordFolder.getProperties().getIsClosed()); + + // close the folder + closeFolder(recordFolder.getId()); + + try + { + filePlanComponentAPI.createFilePlanComponent( + new FilePlanComponent("Record " + getRandomAlphanumeric(), + NON_ELECTRONIC_RECORD_TYPE.toString(), + new FilePlanComponentProperties()), + recordFolder.getId()).getId(); + } + catch (Exception e) + { + } + + // verify the status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); + } + + /** + * Helper method to create a randomly-named / structure in fileplan + * @return record folder + * @throws Exception on failed creation + */ + private FilePlanComponent createFolderInFilePlan() throws Exception + { + // create root category + FilePlanComponent recordCategory = createCategory(FILE_PLAN_ALIAS.toString(), "Category " + getRandomAlphanumeric()); + + // and return a folder underneath + return createFolder(recordCategory.getId(), "Folder " + getRandomAlphanumeric()); + } } From f0bdaac00b5b2733d55eb2d93a6d650d3249468b Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 14:04:37 +0000 Subject: [PATCH 21/42] RM-4391: mandatory parameters test. --- .../NonElectronicRecordTests.java | 83 +++++++++++++++++-- 1 file changed, 78 insertions(+), 5 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 257548c797..1e0136b52e 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -31,11 +31,11 @@ import static java.util.Arrays.asList; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS; -import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentFields.IS_CLOSED; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE; -import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; +import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; +import static org.springframework.http.HttpStatus.BAD_REQUEST; import static org.springframework.http.HttpStatus.CREATED; import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; import static org.testng.Assert.assertEquals; @@ -65,13 +65,14 @@ public class NonElectronicRecordTests extends BaseRestTest @Autowired private DataUser dataUser; - /** + *
      * Given a parent container that is NOT a record folder or an unfiled record folder
      * When I try to create a non-electronic record within the parent container
      * Then nothing happens
      * And an error is reported
-     * @throws Exception 
+     * 
+ * @throws Exception if prerequisites can't be created */ @Test(description = "Non-electronic record can't be created as a child of invalid parent Id") public void noCreateForInvalidParentIds() throws Exception @@ -110,11 +111,13 @@ public class NonElectronicRecordTests extends BaseRestTest } /** + *
      * Given a parent container that is a record folder
      * And the record folder is open
      * When I try to create a non-electronic record within the parent container
      * Then the non-electronic record is created
      * And the details of the new record are returned
+     * 
      * @throws Exception if record can't be created
      */
     @Test(description = "Non-electronic record can be created in open record folder")
@@ -171,12 +174,14 @@ public class NonElectronicRecordTests extends BaseRestTest
     }
     
     /**
+     * 
      * Given a parent container that is a record folder
      * And the record folder is closed 
      * When I try to create a non-electronic record within the parent container
      * Then nothing happens
      * And an error is reported
-     * @throws Exception on failed component creation
+     * 
+ * @throws Exception if prerequisites can't be created */ @Test(description = "Non-electronic record can't be created in closed record folder") public void noCreateInClosedFolder() throws Exception @@ -190,6 +195,7 @@ public class NonElectronicRecordTests extends BaseRestTest // close the folder closeFolder(recordFolder.getId()); + // try to create it, this should fail and throw an exception try { filePlanComponentAPI.createFilePlanComponent( @@ -205,6 +211,73 @@ public class NonElectronicRecordTests extends BaseRestTest // verify the status code filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); } + + /** + *
+     * Given a parent container that is a record folder
+     * And the record folder is open
+     * When I try to create a non-electronic record within the parent container
+     * And I do not provide all the required mandatory property values
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * @throws Exception if prerequisites can't be created + */ + @Test(description = "Non-electronic record can only be created if all mandatory properties are given") + public void allMandatoryPropertiesRequired() throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + FilePlanComponent recordFolder = createFolderInFilePlan(); + assertFalse(recordFolder.getProperties().getIsClosed()); + + // component without name and title + FilePlanComponent noNameOrTitle = getDummyFilePlanComponent(); + + // component with title only + FilePlanComponent titleOnly = getDummyFilePlanComponent(); + FilePlanComponentProperties properties = new FilePlanComponentProperties(); + properties.setTitle("Title " + getRandomAlphanumeric()); + titleOnly.setProperties(properties); + + // component with name only + FilePlanComponent nameOnly = getDummyFilePlanComponent(); + nameOnly.setName("Name " + getRandomAlphanumeric()); + + // try to create invalid components + asList(noNameOrTitle, titleOnly, nameOnly).stream().forEach(c -> + { + try + { + logger.info("Creating non-electronic record with body:\n" + toJson(c)); + } + catch (Exception error) + { + } + + // this should fail and throw an exception + try + { + filePlanComponentAPI.createFilePlanComponent(c, recordFolder.getId()); + } + catch (Exception e) + { + } + + // verify the status code is BAD_REQUEST + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(BAD_REQUEST); + }); + } + + /** + * Helper function to return an empty FilePlanComponent for non-electronic record + * @return + */ + private FilePlanComponent getDummyFilePlanComponent() + { + FilePlanComponent component = new FilePlanComponent(); + component.setNodeType(NON_ELECTRONIC_RECORD_TYPE.toString()); + return component; + } /** * Helper method to create a randomly-named / structure in fileplan From f9c010b9dede8e5eb1bbc6c3980c072782211f53 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 14:46:57 +0000 Subject: [PATCH 22/42] RM-4391: Added remaining unfiled records root + folders tests. --- .../NonElectronicRecordTests.java | 89 ++++++++++++++----- 1 file changed, 67 insertions(+), 22 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 1e0136b52e..9d556a454a 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -31,8 +31,10 @@ import static java.util.Arrays.asList; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.BAD_REQUEST; @@ -48,7 +50,9 @@ import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; import org.alfresco.utility.data.DataUser; +import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; +import org.testng.annotations.DataProvider; import org.testng.annotations.Test; /** @@ -65,6 +69,19 @@ public class NonElectronicRecordTests extends BaseRestTest @Autowired private DataUser dataUser; + /** Valid root containers where non-electronic records can be created */ + @DataProvider(name = "validContainers") + public Object[][] rootContainers() throws Exception { + return new Object[][] { + // an arbitrary record folder + { createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, + // unfiled records root + { filePlanComponentAPI.getFilePlanComponent(UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, + // an arbitrary unfiled records folder + { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) } + }; + } + /** *
      * Given a parent container that is NOT a record folder or an unfiled record folder
@@ -118,16 +135,28 @@ public class NonElectronicRecordTests extends BaseRestTest
      * Then the non-electronic record is created
      * And the details of the new record are returned
      * 
+     * and
+     * 
+     * Given a parent container that is an unfiled record folder or the root unfiled record container
+     * When I try to create a non-electronic record within the parent container
+     * Then the non-electronic record is created
+     * And the details of the new record are returned
+     * 
* @throws Exception if record can't be created */ - @Test(description = "Non-electronic record can be created in open record folder") - public void canCreateInOpenFolder() throws Exception + @Test + ( + dataProvider = "validContainers", + description = "Non-electronic records can be created in valid containers" + ) + public void canCreateInValidContainers(FilePlanComponent container) throws Exception { - filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - FilePlanComponent recordFolder = createFolderInFilePlan(); - - // the folder should be open - assertFalse(recordFolder.getProperties().getIsClosed()); + logger.info("Root container:\n" + toJson(container)); + if (container.getNodeType().equals(RECORD_FOLDER_TYPE.toString())) + { + // only record folders can be open or closed + assertFalse(container.getProperties().getIsClosed()); + } // use these properties for non-electronic record to be created String title = "Title " + getRandomAlphanumeric(); @@ -155,7 +184,7 @@ public class NonElectronicRecordTests extends BaseRestTest new FilePlanComponent("Record " + getRandomAlphanumeric(), NON_ELECTRONIC_RECORD_TYPE.toString(), properties), - recordFolder.getId()).getId(); + container.getId()).getId(); // verify the create request status code filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(CREATED); @@ -186,8 +215,7 @@ public class NonElectronicRecordTests extends BaseRestTest @Test(description = "Non-electronic record can't be created in closed record folder") public void noCreateInClosedFolder() throws Exception { - filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - FilePlanComponent recordFolder = createFolderInFilePlan(); + FilePlanComponent recordFolder = createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()); // the folder should be open assertFalse(recordFolder.getProperties().getIsClosed()); @@ -221,26 +249,41 @@ public class NonElectronicRecordTests extends BaseRestTest * Then nothing happens * And an error is reported *
+ * and + *
+     * Given a parent container that is an unfiled record folder or the root unfiled record container
+     * When I try to create a non-electronic record within the parent container
+     * And I do not provide all the required mandatory property values
+     * Then nothing happens
+     * And an error is reported
+     * 
* @throws Exception if prerequisites can't be created */ - @Test(description = "Non-electronic record can only be created if all mandatory properties are given") - public void allMandatoryPropertiesRequired() throws Exception + @Test + ( + dataProvider = "validContainers", + description = "Non-electronic record can only be created if all mandatory properties are given" + ) + public void allMandatoryPropertiesRequired(FilePlanComponent container) throws Exception { - filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - FilePlanComponent recordFolder = createFolderInFilePlan(); - assertFalse(recordFolder.getProperties().getIsClosed()); + logger.info("Root container:\n" + toJson(container)); + if (container.getNodeType().equals(RECORD_FOLDER_TYPE.toString())) + { + // only record folders can be open or closed + assertFalse(container.getProperties().getIsClosed()); + } // component without name and title - FilePlanComponent noNameOrTitle = getDummyFilePlanComponent(); + FilePlanComponent noNameOrTitle = getDummyNonElectronicRecord(); // component with title only - FilePlanComponent titleOnly = getDummyFilePlanComponent(); + FilePlanComponent titleOnly = getDummyNonElectronicRecord(); FilePlanComponentProperties properties = new FilePlanComponentProperties(); properties.setTitle("Title " + getRandomAlphanumeric()); titleOnly.setProperties(properties); // component with name only - FilePlanComponent nameOnly = getDummyFilePlanComponent(); + FilePlanComponent nameOnly = getDummyNonElectronicRecord(); nameOnly.setName("Name " + getRandomAlphanumeric()); // try to create invalid components @@ -257,7 +300,7 @@ public class NonElectronicRecordTests extends BaseRestTest // this should fail and throw an exception try { - filePlanComponentAPI.createFilePlanComponent(c, recordFolder.getId()); + filePlanComponentAPI.createFilePlanComponent(c, container.getId()); } catch (Exception e) { @@ -272,7 +315,7 @@ public class NonElectronicRecordTests extends BaseRestTest * Helper function to return an empty FilePlanComponent for non-electronic record * @return */ - private FilePlanComponent getDummyFilePlanComponent() + private FilePlanComponent getDummyNonElectronicRecord() { FilePlanComponent component = new FilePlanComponent(); component.setNodeType(NON_ELECTRONIC_RECORD_TYPE.toString()); @@ -284,10 +327,12 @@ public class NonElectronicRecordTests extends BaseRestTest * @return record folder * @throws Exception on failed creation */ - private FilePlanComponent createFolderInFilePlan() throws Exception + private FilePlanComponent createFolderInFilePlan(UserModel user, String parentId) throws Exception { + filePlanComponentAPI.usingRestWrapper().authenticateUser(user); + // create root category - FilePlanComponent recordCategory = createCategory(FILE_PLAN_ALIAS.toString(), "Category " + getRandomAlphanumeric()); + FilePlanComponent recordCategory = createCategory(parentId, "Category " + getRandomAlphanumeric()); // and return a folder underneath return createFolder(recordCategory.getId(), "Folder " + getRandomAlphanumeric()); From 42ba364b0f9056d26cc9b847cf2477e0403b5fdf Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 1 Dec 2016 14:59:24 +0000 Subject: [PATCH 23/42] RM-4391: Now with correct header. --- .../FilePlanComponentContent.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java index 9c90c35156..eb2f102266 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/model/fileplancomponents/FilePlanComponentContent.java @@ -4,9 +4,24 @@ * %% * Copyright (C) 2005 - 2016 Alfresco Software Limited * %% - * License rights for this program may be obtained from Alfresco Software, Ltd. - * pursuant to a written agreement and any use of this program without such an - * agreement is prohibited. + * This file is part of the Alfresco software. + * - + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * - + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * - + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * - + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . * #L% */ package org.alfresco.rest.rm.community.model.fileplancomponents; From 672d339bcb5c517c470421584213790015873cfd Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Mon, 5 Dec 2016 14:52:55 +0000 Subject: [PATCH 24/42] RM-4391: User without rm privileges test. --- .../rest/rm/community/base/BaseRestTest.java | 46 ++++++++++++++- .../NonElectronicRecordTests.java | 57 ++++++++++++++++--- 2 files changed, 94 insertions(+), 9 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 601d1437e2..86d25ac5ac 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -47,11 +47,14 @@ import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent import org.alfresco.rest.rm.community.model.site.RMSite; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; import org.alfresco.rest.rm.community.requests.RMSiteAPI; +import org.alfresco.utility.constants.UserRole; import org.alfresco.utility.data.DataUser; +import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; +import org.springframework.http.HttpStatus; import org.testng.annotations.BeforeClass; /** @@ -84,7 +87,7 @@ public class BaseRestTest extends RestTest @Autowired private RMSiteAPI rmSiteAPI; - + @Autowired private DataUser dataUser; @@ -211,4 +214,45 @@ public class BaseRestTest extends RestTest restWrapper.assertStatusCodeIs(OK); return updatedComponent; } + + /** + * Create RM user with given role + *
+ * Checks whether the user exists in RM site and creates it if required, with password identical + * to username. Note the role is a Core API role, not an RM role. + *
+ * For already existing users, no role verification is performed. + *

+ * @param userName username to add + * @param userRole user's role + * @throws Exception + */ + public UserModel createRMUserWithRole(String userName, UserRole userRole) throws Exception + { + rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + String siteId = rmSiteAPI.getSite().getId(); + logger.info("Site:" + rmSiteAPI.getSite() + " id: " + siteId); + + // check if user exists + UserModel user = new UserModel(); + user.setUsername(userName); + user.setPassword(userName); + rmSiteAPI.usingRestWrapper().withCoreAPI().usingSite(siteId).getSiteMember(user); + + if (rmSiteAPI.usingRestWrapper().getStatusCode().equals(HttpStatus.NOT_FOUND.toString())) + { + // user doesn't exist, create it + logger.info("user doesn't exist, creating"); + + user = dataUser.createUser(userName, userName); + user.setUserRole(userRole); + + rmSiteAPI.usingRestWrapper().withCoreAPI().usingSite(siteId).addPerson(user); + rmSiteAPI.usingRestWrapper().assertStatusCodeIs(HttpStatus.CREATED); + } + logger.info("returning existing user"); + + return user; + } } \ No newline at end of file diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 9d556a454a..6848d39ba9 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -39,6 +39,7 @@ import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.BAD_REQUEST; import static org.springframework.http.HttpStatus.CREATED; +import static org.springframework.http.HttpStatus.NOT_FOUND; import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; @@ -49,6 +50,7 @@ import org.alfresco.rest.rm.community.base.BaseRestTest; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; +import org.alfresco.utility.constants.UserRole; import org.alfresco.utility.data.DataUser; import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; @@ -68,7 +70,7 @@ public class NonElectronicRecordTests extends BaseRestTest @Autowired private DataUser dataUser; - + /** Valid root containers where non-electronic records can be created */ @DataProvider(name = "validContainers") public Object[][] rootContainers() throws Exception { @@ -92,7 +94,7 @@ public class NonElectronicRecordTests extends BaseRestTest * @throws Exception if prerequisites can't be created */ @Test(description = "Non-electronic record can't be created as a child of invalid parent Id") - public void noCreateForInvalidParentIds() throws Exception + public void cantCreateForInvalidParentIds() throws Exception { filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); @@ -151,6 +153,8 @@ public class NonElectronicRecordTests extends BaseRestTest ) public void canCreateInValidContainers(FilePlanComponent container) throws Exception { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + logger.info("Root container:\n" + toJson(container)); if (container.getNodeType().equals(RECORD_FOLDER_TYPE.toString())) { @@ -213,8 +217,9 @@ public class NonElectronicRecordTests extends BaseRestTest * @throws Exception if prerequisites can't be created */ @Test(description = "Non-electronic record can't be created in closed record folder") - public void noCreateInClosedFolder() throws Exception + public void cantCreateInClosedFolder() throws Exception { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); FilePlanComponent recordFolder = createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()); // the folder should be open @@ -266,6 +271,8 @@ public class NonElectronicRecordTests extends BaseRestTest ) public void allMandatoryPropertiesRequired(FilePlanComponent container) throws Exception { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + logger.info("Root container:\n" + toJson(container)); if (container.getNodeType().equals(RECORD_FOLDER_TYPE.toString())) { @@ -282,12 +289,8 @@ public class NonElectronicRecordTests extends BaseRestTest properties.setTitle("Title " + getRandomAlphanumeric()); titleOnly.setProperties(properties); - // component with name only - FilePlanComponent nameOnly = getDummyNonElectronicRecord(); - nameOnly.setName("Name " + getRandomAlphanumeric()); - // try to create invalid components - asList(noNameOrTitle, titleOnly, nameOnly).stream().forEach(c -> + asList(noNameOrTitle, titleOnly).stream().forEach(c -> { try { @@ -311,6 +314,44 @@ public class NonElectronicRecordTests extends BaseRestTest }); } + /** + *

+     * Given that I am a user without RM privileges
+     * When I try to create a non-electronic record
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * @throws Exception + */ + @Test + ( + dataProvider = "validContainers", + description = "Non-electronic record can't be created if user doesn't have RM privileges" + ) + public void cantCreateIfNoRmPrivileges(FilePlanComponent container) throws Exception + { + String username = "zzzuser"; + UserModel user = createRMUserWithRole(username, UserRole.SiteConsumer); + + filePlanComponentAPI.usingRestWrapper().authenticateUser(user); + + // try to create a fileplan component + FilePlanComponent record = new FilePlanComponent("Record Name", NON_ELECTRONIC_RECORD_TYPE.toString(), + new FilePlanComponentProperties("Name", "Title")); + + // this should fail and throw an exception + try + { + filePlanComponentAPI.createFilePlanComponent(record, container.getId()); + } + catch (Exception e) + { + } + + // user who isn't an RM site member can't access the container path, hence NOT_FOUND + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(NOT_FOUND); + } + /** * Helper function to return an empty FilePlanComponent for non-electronic record * @return From 6b3be22a7598a80b3a7d9d87ec2720a02e1fef21 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Mon, 5 Dec 2016 15:59:38 +0000 Subject: [PATCH 25/42] RM-4391: fixed core API use affecting RM base path --- .../rest/rm/community/base/BaseRestTest.java | 16 +++++----------- .../NonElectronicRecordTests.java | 5 +++-- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 86d25ac5ac..88c3426586 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -49,6 +49,7 @@ import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; import org.alfresco.rest.rm.community.requests.RMSiteAPI; import org.alfresco.utility.constants.UserRole; import org.alfresco.utility.data.DataUser; +import org.alfresco.utility.model.SiteModel; import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -230,28 +231,21 @@ public class BaseRestTest extends RestTest public UserModel createRMUserWithRole(String userName, UserRole userRole) throws Exception { rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - String siteId = rmSiteAPI.getSite().getId(); - logger.info("Site:" + rmSiteAPI.getSite() + " id: " + siteId); // check if user exists UserModel user = new UserModel(); user.setUsername(userName); user.setPassword(userName); - rmSiteAPI.usingRestWrapper().withCoreAPI().usingSite(siteId).getSiteMember(user); - - if (rmSiteAPI.usingRestWrapper().getStatusCode().equals(HttpStatus.NOT_FOUND.toString())) + + if (!dataUser.isUserInRepo(userName)) { // user doesn't exist, create it - logger.info("user doesn't exist, creating"); - user = dataUser.createUser(userName, userName); user.setUserRole(userRole); - - rmSiteAPI.usingRestWrapper().withCoreAPI().usingSite(siteId).addPerson(user); - rmSiteAPI.usingRestWrapper().assertStatusCodeIs(HttpStatus.CREATED); + + dataUser.addUserToSite(user, new SiteModel(siteId), userRole); } - logger.info("returning existing user"); return user; } diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 6848d39ba9..c556821f73 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -39,6 +39,7 @@ import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.BAD_REQUEST; import static org.springframework.http.HttpStatus.CREATED; +import static org.springframework.http.HttpStatus.FORBIDDEN; import static org.springframework.http.HttpStatus.NOT_FOUND; import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; import static org.testng.Assert.assertEquals; @@ -348,8 +349,8 @@ public class NonElectronicRecordTests extends BaseRestTest { } - // user who isn't an RM site member can't access the container path, hence NOT_FOUND - filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(NOT_FOUND); + // user who isn't an RM site member can't access the container path + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(FORBIDDEN); } /** From f73203bd7f836e25925c0827c2447ce0dc8b3c51 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Mon, 5 Dec 2016 16:00:27 +0000 Subject: [PATCH 26/42] RM-4391: javadoc clarification --- .../java/org/alfresco/rest/rm/community/base/BaseRestTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 88c3426586..c0fcf4f566 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -222,7 +222,7 @@ public class BaseRestTest extends RestTest * Checks whether the user exists in RM site and creates it if required, with password identical * to username. Note the role is a Core API role, not an RM role. *
- * For already existing users, no role verification is performed. + * For already existing users, no site membership or role verification is performed. *

* @param userName username to add * @param userRole user's role From 0be62ac0944c6982d26e1daf04fa8480ff06e5c6 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Tue, 6 Dec 2016 11:23:48 +0000 Subject: [PATCH 27/42] RM-4391: CI remediation --- .../rest/rm/community/base/BaseRestTest.java | 37 ------------ .../NonElectronicRecordTests.java | 59 +++++++++++++++---- 2 files changed, 46 insertions(+), 50 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index c0fcf4f566..3fa9973b24 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -47,15 +47,11 @@ import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent import org.alfresco.rest.rm.community.model.site.RMSite; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; import org.alfresco.rest.rm.community.requests.RMSiteAPI; -import org.alfresco.utility.constants.UserRole; import org.alfresco.utility.data.DataUser; -import org.alfresco.utility.model.SiteModel; -import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; -import org.springframework.http.HttpStatus; import org.testng.annotations.BeforeClass; /** @@ -216,37 +212,4 @@ public class BaseRestTest extends RestTest return updatedComponent; } - /** - * Create RM user with given role - *
- * Checks whether the user exists in RM site and creates it if required, with password identical - * to username. Note the role is a Core API role, not an RM role. - *
- * For already existing users, no site membership or role verification is performed. - *

- * @param userName username to add - * @param userRole user's role - * @throws Exception - */ - public UserModel createRMUserWithRole(String userName, UserRole userRole) throws Exception - { - rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); - String siteId = rmSiteAPI.getSite().getId(); - - // check if user exists - UserModel user = new UserModel(); - user.setUsername(userName); - user.setPassword(userName); - - if (!dataUser.isUserInRepo(userName)) - { - // user doesn't exist, create it - user = dataUser.createUser(userName, userName); - user.setUserRole(userRole); - - dataUser.addUserToSite(user, new SiteModel(siteId), userRole); - } - - return user; - } } \ No newline at end of file diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index c556821f73..69c197ea90 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -40,7 +40,6 @@ import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.BAD_REQUEST; import static org.springframework.http.HttpStatus.CREATED; import static org.springframework.http.HttpStatus.FORBIDDEN; -import static org.springframework.http.HttpStatus.NOT_FOUND; import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertFalse; @@ -51,8 +50,10 @@ import org.alfresco.rest.rm.community.base.BaseRestTest; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; +import org.alfresco.rest.rm.community.requests.RMSiteAPI; import org.alfresco.utility.constants.UserRole; import org.alfresco.utility.data.DataUser; +import org.alfresco.utility.model.SiteModel; import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; import org.testng.annotations.DataProvider; @@ -72,6 +73,9 @@ public class NonElectronicRecordTests extends BaseRestTest @Autowired private DataUser dataUser; + @Autowired + private RMSiteAPI rmSiteAPI; + /** Valid root containers where non-electronic records can be created */ @DataProvider(name = "validContainers") public Object[][] rootContainers() throws Exception { @@ -230,17 +234,12 @@ public class NonElectronicRecordTests extends BaseRestTest closeFolder(recordFolder.getId()); // try to create it, this should fail and throw an exception - try - { - filePlanComponentAPI.createFilePlanComponent( - new FilePlanComponent("Record " + getRandomAlphanumeric(), - NON_ELECTRONIC_RECORD_TYPE.toString(), - new FilePlanComponentProperties()), - recordFolder.getId()).getId(); - } - catch (Exception e) - { - } + + filePlanComponentAPI.createFilePlanComponent( + new FilePlanComponent("Record " + getRandomAlphanumeric(), + NON_ELECTRONIC_RECORD_TYPE.toString(), + new FilePlanComponentProperties()), + recordFolder.getId()).getId(); // verify the status code filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); @@ -332,7 +331,7 @@ public class NonElectronicRecordTests extends BaseRestTest public void cantCreateIfNoRmPrivileges(FilePlanComponent container) throws Exception { String username = "zzzuser"; - UserModel user = createRMUserWithRole(username, UserRole.SiteConsumer); + UserModel user = createUserWithRole(username, UserRole.SiteManager); filePlanComponentAPI.usingRestWrapper().authenticateUser(user); @@ -379,4 +378,38 @@ public class NonElectronicRecordTests extends BaseRestTest // and return a folder underneath return createFolder(recordCategory.getId(), "Folder " + getRandomAlphanumeric()); } + + /** + * Create user with given role and add it to RM site + *
+ * Checks whether the user exists in RM site and creates it if required, with password identical + * to username. Note the role is a Core API role, not an RM role. + *
+ * For already existing users, no site membership or role verification is performed. + *

+ * @param userName username to add + * @param userRole user's role + * @throws Exception + */ + private UserModel createUserWithRole(String userName, UserRole userRole) throws Exception + { + rmSiteAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + String siteId = rmSiteAPI.getSite().getId(); + + // check if user exists + UserModel user = new UserModel(); + user.setUsername(userName); + user.setPassword(userName); + + if (!dataUser.isUserInRepo(userName)) + { + // user doesn't exist, create it + user = dataUser.createUser(userName, userName); + user.setUserRole(userRole); + + dataUser.addUserToSite(user, new SiteModel(siteId), userRole); + } + + return user; + } } From fa543e43d3c5a883d74af1021859b7c081596214 Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Wed, 7 Dec 2016 15:25:19 +0200 Subject: [PATCH 28/42] RM-4521 - added info about creation of electronic records --- .../src/main/webapp/definitions/ig-core-api.yaml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml index 120b40c21b..02ea2ca43f 100644 --- a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml +++ b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml @@ -200,9 +200,10 @@ paths: Create a fileplan component as a primary child of node **fileplanComponentId**. This API method supports file upload using multipart/form-data. + Electronic records are the only nodes that have content. Use the **filedata** field to represent the content to upload. - You can use a **name** field to give an alternative name for the new file. + You can use a **name** field to give an alternative name for the new electronic record. For multipart/form-data upload you can use the **renditions** field to create renditions (e.g. doclib) asynchronously upon upload. Note that currently only one rendition can be requested. Also, as requesting rendition is a background process, @@ -286,6 +287,14 @@ paths: } ``` + You can create an empty electronic record and use the record endpoint to create content: + ```JSON + { + "name":"My Non-electronic Record", + "nodeType":"cm:content" + } + ``` + You can create a fileplan component inside a container hierarchy: ```JSON { From ad1b9aa6d81842002afeb1581bced78213b0d1d1 Mon Sep 17 00:00:00 2001 From: Ana Bozianu Date: Wed, 7 Dec 2016 15:29:36 +0200 Subject: [PATCH 29/42] RM-4521 - fixed typo --- .../src/main/webapp/definitions/ig-core-api.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml index 02ea2ca43f..ade891e07b 100644 --- a/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml +++ b/rm-community/rm-community-rest-api-explorer/src/main/webapp/definitions/ig-core-api.yaml @@ -290,7 +290,7 @@ paths: You can create an empty electronic record and use the record endpoint to create content: ```JSON { - "name":"My Non-electronic Record", + "name":"My Electronic Record", "nodeType":"cm:content" } ``` From b1665d7f40c91e22a6a950d020c3f14b8d899350 Mon Sep 17 00:00:00 2001 From: Mihai Cozma Date: Wed, 7 Dec 2016 16:48:14 +0200 Subject: [PATCH 30/42] Remove .orig files --- pom.xml.orig | 392 --------------------------------------------------- 1 file changed, 392 deletions(-) delete mode 100644 pom.xml.orig diff --git a/pom.xml.orig b/pom.xml.orig deleted file mode 100644 index 81707dffe3..0000000000 --- a/pom.xml.orig +++ /dev/null @@ -1,392 +0,0 @@ - - - 4.0.0 - org.alfresco - alfresco-rm - pom - 2.6-SNAPSHOT - Alfresco Records Management - - - org.alfresco.maven - alfresco-sdk-parent - 2.1.1 - - - http://www.alfresco.org/ - 2005 - - Alfresco Software - http://www.alfresco.org/ - - - - scm:git:https://gitlab.alfresco.com/records-management/records-management.git - scm:git:https://gitlab.alfresco.com/records-management/records-management.git - https://gitlab.alfresco.com/records-management/records-management - HEAD - - - - JIRA - https://issues.alfresco.com/jira/browse/RM - - - Bamboo - https://bamboo.alfresco.com/bamboo/browse/RM - - - - 3.2.5 - - - - - alfresco-internal - https://artifacts.alfresco.com/nexus/content/groups/private - - - - - - alfresco-public - https://artifacts.alfresco.com/nexus/content/groups/public - - - - - - alfresco-internal - https://artifacts.alfresco.com/nexus/content/repositories/internal-releases/ - - - alfresco-internal-snapshots - https://artifacts.alfresco.com/nexus/content/repositories/internal-snapshots/ - - - - - - - ${alfresco.groupId} - alfresco-platform-distribution - ${alfresco.version} - pom - import - - - org.reflections - reflections - 0.9.10 - - - - - - rm-community - - - - - enterprise - - - !community - - - - rm-enterprise - rm-automation - - - - - - AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0;IGNORECASE=TRUE - false - 1.7 - 1.8 - UTF-8 - UTF-8 - -Xmx1024m -XX:MaxPermSize=256m -Duser.language=en -Dcom.sun.management.jmxremote - - - true - false - - - - - ${project.artifactId}-${project.version} - - - org.apache.maven.plugins - maven-enforcer-plugin - - - enforce-java - - enforce - - - - - 1.8 - - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - - - regex-properties - - regex-properties - - - - - rm.module.repo.version.min - ${alfresco.version} -<<<<<<< HEAD - (\d+)\.(\d+).* - $1.$2 -||||||| merged common ancestors -- (\d+)\.(\d+).* -- $1.$2 -======= - (\d+)\.(\d+).* - $1.$2 ->>>>>>> d73d1e98 - false - - - rm.module.version - ${project.version} - ([0-9\.]*[0-9]).* - $1 - false - - - - - - add-test-source - - add-test-source - - - - src/unit-test/java - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - **/*UnitTest.java - - - - - org.apache.maven.plugins - maven-source-plugin - 3.0.1 - - - attach-sources - - jar - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.10.4 - - - attach-javadocs - - jar - - - - - - - - - maven-compiler-plugin - ${maven.compiler.version} - - ${maven.build.sourceVersion} - ${maven.build.sourceVersion} - - - - default-testCompile - process-test-sources - - testCompile - - - ${maven.build.testSourceVersion} - ${maven.build.testSourceVersion} - - - - - - org.eclipse.m2e - lifecycle-mapping - 1.0.0 - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - [1.0.0,) - - enforce - - - - - - - - - - org.codehaus.mojo - - - build-helper-maven-plugin - - - [1.9.1,) - - - regex-properties - - - - - - - - - - - - org.apache.maven.plugins - maven-enforcer-plugin - ${maven.enforcer.plugin} - - - org.codehaus.mojo - properties-maven-plugin - 1.0-alpha-2 - - - org.apache.maven.plugins - maven-failsafe-plugin - 2.19 - - - org.codehaus.mojo - build-helper-maven-plugin - ${maven.buildhelper.version} - - - org.codehaus.mojo - sql-maven-plugin - 1.5 - - - - - org.apache.maven.plugins - maven-release-plugin - 2.5.3 - - V@{project.version} - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - -Xdoclint:none - - - - - - org.codehaus.mojo - license-maven-plugin - 1.8 - - - ${license.verbose} - false - false - - - Alfresco Software Limited - ${project.parent.parent.basedir}/license/description.ftl - true - true - - - file:${project.parent.parent.basedir}/license - - - ${license.update.dryrun} - true - true - - - - src - - - - - **/package-info.java - **/*.properties - **/*.css - **/*.xml - **/*.json - **/*.txt - **/*.html - - - - - - first - - update-file-header - - process-sources - - - - - - - From bf390076ff97b1551c056f8bfddcf65653751517 Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Wed, 7 Dec 2016 15:44:52 +0000 Subject: [PATCH 31/42] RM-4405: electronic records client API implementation --- .../rm-automation-community-rest-api/pom.xml | 5 ++ .../requests/FilePlanComponentAPI.java | 86 +++++++++++++++++-- 2 files changed, 84 insertions(+), 7 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/pom.xml b/rm-automation/rm-automation-community-rest-api/pom.xml index ab99e46c1e..81a3e2c542 100644 --- a/rm-automation/rm-automation-community-rest-api/pom.xml +++ b/rm-automation/rm-automation-community-rest-api/pom.xml @@ -33,6 +33,11 @@ + + com.jayway.restassured + rest-assured + 2.9.0 + org.alfresco.tas restapi-test diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java index f90d9e767c..643bef70ff 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java @@ -26,6 +26,8 @@ */ package org.alfresco.rest.rm.community.requests; +import static com.jayway.restassured.RestAssured.given; + import static org.alfresco.rest.core.RestRequest.requestWithBody; import static org.alfresco.rest.core.RestRequest.simpleRequest; import static org.alfresco.rest.rm.community.util.ParameterCheck.mandatoryObject; @@ -35,11 +37,20 @@ import static org.springframework.http.HttpMethod.DELETE; import static org.springframework.http.HttpMethod.GET; import static org.springframework.http.HttpMethod.POST; import static org.springframework.http.HttpMethod.PUT; +import static org.testng.Assert.fail; + +import java.io.File; + +import com.google.common.io.Resources; +import com.jayway.restassured.response.Response; import org.alfresco.rest.core.RestAPI; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; +import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentsCollection; +import org.alfresco.utility.model.UserModel; import org.springframework.context.annotation.Scope; +import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; /** @@ -118,15 +129,76 @@ public class FilePlanComponentAPI extends RestAPI public FilePlanComponent createFilePlanComponent(FilePlanComponent filePlanComponentModel, String parentId) throws Exception { mandatoryObject("filePlanComponentProperties", filePlanComponentModel); - mandatoryString("parentId", parentId); + return doCreateFilePlanComponent(toJson(filePlanComponentModel), parentId); + } + + /** + * Create electronic record from file resource + * @param electronicRecordModel {@link FilePlanComponent} for electronic record to be created + * @param fileName the name of the resource file + * @param parentId parent container id + * @return newly created {@link FilePlanComponent} + * @throws Exception if operation failed + */ + public FilePlanComponent createElectronicRecord(FilePlanComponent electronicRecordModel, String fileName, String parentId) throws Exception + { + return createElectronicRecord(electronicRecordModel, new File(Resources.getResource(fileName).getFile()), parentId); + } + + /** + * Create electronic record from file resource + * @param electronicRecordModel {@link FilePlanComponent} for electronic record to be created + * @param recordContent {@link File} pointing to the content of the electronic record to be created + * @param parentId parent container id + * @return newly created {@link FilePlanComponent} + * @throws Exception if operation failed + */ + public FilePlanComponent createElectronicRecord(FilePlanComponent electronicRecordModel, File recordContent, String parentId) throws Exception + { + mandatoryObject("filePlanComponentProperties", electronicRecordModel); + if (!electronicRecordModel.getNodeType().equals(FilePlanComponentType.CONTENT_TYPE.toString())) + { + fail("Only electronic records are supported"); + } + + /* + * RestWrapper adds some headers which break multipart/form-data uploads and also assumes json POST requests. + * Upload the file using RestAssured library. + */ + UserModel currentUser = usingRestWrapper().getTestUser(); + Response response = given() + .auth().basic(currentUser.getUsername(), currentUser.getPassword()) + .multiPart("nodeBodyCreate", toJson(electronicRecordModel), "application/json") + .multiPart("filedata", recordContent, "application/octet-stream") + .expect() + .statusCode(HttpStatus.CREATED.value()) + .when() + .post("fileplan-components/{fileplanComponentId}/children?{parameters}", parentId, getParameters()) + .andReturn(); + usingRestWrapper().setStatusCode(Integer.toString(response.getStatusCode())); + LOG.info("electronic record created: " + response.getBody().prettyPrint()); + + /* return a FilePlanComponent object representing Response */ + return response.jsonPath().getObject("entry", FilePlanComponent.class); + } + + /** + * Helper method for handling low-level fileplan component creation requests + * @param requestBody + * @param parentId + * @return Newly created {@link FilePlanComponent} + * @throws Exception + */ + private FilePlanComponent doCreateFilePlanComponent(String requestBody, String parentId) throws Exception + { + mandatoryString("parentId", parentId); return usingRestWrapper().processModel(FilePlanComponent.class, requestWithBody( - POST, - toJson(filePlanComponentModel), - "fileplan-components/{fileplanComponentId}/children?{parameters}", - parentId, - getParameters() - )); + POST, + requestBody, + "fileplan-components/{fileplanComponentId}/children?{parameters}", + parentId, + getParameters())); } /** From 6383308df0bd5c086f0f06162b621c3425b31c0e Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Wed, 7 Dec 2016 16:37:22 +0000 Subject: [PATCH 32/42] RM-4405: added some utility methods --- .../requests/FilePlanComponentAPI.java | 1 + .../rest/rm/community/base/BaseRestTest.java | 33 +++++++++++++++++++ .../NonElectronicRecordTests.java | 18 +--------- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java index 643bef70ff..ba9b8b9f5b 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java @@ -157,6 +157,7 @@ public class FilePlanComponentAPI extends RestAPI public FilePlanComponent createElectronicRecord(FilePlanComponent electronicRecordModel, File recordContent, String parentId) throws Exception { mandatoryObject("filePlanComponentProperties", electronicRecordModel); + mandatoryString("parentId", parentId); if (!electronicRecordModel.getNodeType().equals(FilePlanComponentType.CONTENT_TYPE.toString())) { fail("Only electronic records are supported"); diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 3fa9973b24..96362a07bd 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -30,10 +30,12 @@ import static java.lang.Integer.parseInt; import static org.alfresco.rest.rm.community.base.TestData.CATEGORY_TITLE; import static org.alfresco.rest.rm.community.base.TestData.FOLDER_TITLE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.UNFILED_RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.model.site.RMSiteCompliance.STANDARD; +import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.CREATED; import static org.springframework.http.HttpStatus.OK; @@ -48,6 +50,7 @@ import org.alfresco.rest.rm.community.model.site.RMSite; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; import org.alfresco.rest.rm.community.requests.RMSiteAPI; import org.alfresco.utility.data.DataUser; +import org.alfresco.utility.model.UserModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; @@ -212,4 +215,34 @@ public class BaseRestTest extends RestTest return updatedComponent; } + /** + * Helper method to create a randomly-named / structure in fileplan + * @param user user under whose privileges this structure is going to be created + * @param parentId parent container id + * @return record folder + * @throws Exception on failed creation + */ + public FilePlanComponent createFolderInFilePlan(UserModel user, String parentId) throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(user); + + // create root category + FilePlanComponent recordCategory = createCategory(parentId, "Category " + getRandomAlphanumeric()); + + // and return a folder underneath + return createFolder(recordCategory.getId(), "Folder " + getRandomAlphanumeric()); + } + + /** + * Helper method to retieve a fileplan component with user's privilege + * @param user user under whose privileges a component is to be read + * @param componentId id of the component to read + * @return {@link FilePlanComponent} for given componentId + * @throws Exception if user doesn't have sufficient privileges + */ + public FilePlanComponent getFilePlanComponentAsUser(UserModel user, String componentId) throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(user); + return filePlanComponentAPI.getFilePlanComponent(componentId); + } } \ No newline at end of file diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java index 69c197ea90..6990e1f319 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java @@ -83,7 +83,7 @@ public class NonElectronicRecordTests extends BaseRestTest // an arbitrary record folder { createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, // unfiled records root - { filePlanComponentAPI.getFilePlanComponent(UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, + { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, // an arbitrary unfiled records folder { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) } }; @@ -363,22 +363,6 @@ public class NonElectronicRecordTests extends BaseRestTest return component; } - /** - * Helper method to create a randomly-named / structure in fileplan - * @return record folder - * @throws Exception on failed creation - */ - private FilePlanComponent createFolderInFilePlan(UserModel user, String parentId) throws Exception - { - filePlanComponentAPI.usingRestWrapper().authenticateUser(user); - - // create root category - FilePlanComponent recordCategory = createCategory(parentId, "Category " + getRandomAlphanumeric()); - - // and return a folder underneath - return createFolder(recordCategory.getId(), "Folder " + getRandomAlphanumeric()); - } - /** * Create user with given role and add it to RM site *
From 7540fbb519dec8978999326642be9088fc17e67f Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Wed, 7 Dec 2016 16:37:56 +0000 Subject: [PATCH 33/42] RM-4405: added tests with valid containers --- .../ElectronicRecordTests.java | 102 ++++++++++++++++++ .../src/test/resources/money.JPG | Bin 0 -> 540412 bytes 2 files changed, 102 insertions(+) create mode 100644 rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java create mode 100644 rm-automation/rm-automation-community-rest-api/src/test/resources/money.JPG diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java new file mode 100644 index 0000000000..f9c05fcf80 --- /dev/null +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java @@ -0,0 +1,102 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2016 Alfresco Software Limited + * %% + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + * #L% + */ +package org.alfresco.rest.rm.community.fileplancomponents; + +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; + +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.CONTENT_TYPE; +import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; +import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; +import static org.springframework.http.HttpStatus.CREATED; +import static org.testng.Assert.assertFalse; +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertTrue; + +import java.util.Random; + +import org.alfresco.rest.rm.community.base.BaseRestTest; +import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; +import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; +import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; +import org.alfresco.rest.rm.community.requests.RMSiteAPI; +import org.alfresco.utility.data.DataUser; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * + * @author Kristijan Conkas + * @since + */ +public class ElectronicRecordTests extends BaseRestTest +{ + @Autowired + private FilePlanComponentAPI filePlanComponentAPI; + + @Autowired + private DataUser dataUser; + + @Autowired + private RMSiteAPI rmSiteAPI; + + /** image resource file to be used for records body */ + private static final String IMAGE_FILE = "money.JPG"; + + /** Valid root containers where non-electronic records can be created */ + @DataProvider(name = "validContainers") + public Object[][] rootContainers() throws Exception { + return new Object[][] { + // an arbitrary record folder + { createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, + // unfiled records root + { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, + // an arbitrary unfiled records folder + { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) } + }; + } + + /** + *

+     * Given a parent container that is an unfiled record folder or the root unfiled record container
+     * When I try to create an electronic record within the parent container
+     * Then the electronic record is created
+     * And the details of the new record are returned
+     * 
+ * @throws Exception + */ + @Test + ( + dataProvider = "validContainers", + description = "Electronic records can be created in unfiled record folder or unfiled record root" + ) + public void canCreateElectronicRecordsInValidContainers(FilePlanComponent container) throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + FilePlanComponent record = new FilePlanComponent("Record " + getRandomAlphanumeric(), CONTENT_TYPE.toString(), + new FilePlanComponentProperties()); + String newRecordId = filePlanComponentAPI.createElectronicRecord(record, IMAGE_FILE, container.getId()).getId(); + + // verify the create request status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(CREATED); + + // get newly created electonic record and verify its properties + FilePlanComponent electronicRecord = filePlanComponentAPI.getFilePlanComponent(newRecordId); + // record will have record identifier inserted in its name but will for sure start with file name + // and end with its extension + assertTrue(electronicRecord.getName().startsWith(IMAGE_FILE.substring(0, IMAGE_FILE.indexOf(".")))); + } +} diff --git a/rm-automation/rm-automation-community-rest-api/src/test/resources/money.JPG b/rm-automation/rm-automation-community-rest-api/src/test/resources/money.JPG new file mode 100644 index 0000000000000000000000000000000000000000..5939b17709c6a648a2141e09defce82c6f8ed56e GIT binary patch literal 540412 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

&Due}{iq{!#55^}SF+QDl45(&$ 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 z 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%0Dl}h7`ZT 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 Date: Wed, 7 Dec 2016 16:49:02 +0000 Subject: [PATCH 34/42] RM-4405: removed hardcoding --- .../community/requests/FilePlanComponentAPI.java | 5 +++-- .../ElectronicRecordTests.java | 16 ++-------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java index ba9b8b9f5b..8164f3afbc 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java @@ -42,6 +42,7 @@ import static org.testng.Assert.fail; import java.io.File; import com.google.common.io.Resources; +import com.jayway.restassured.http.ContentType; import com.jayway.restassured.response.Response; import org.alfresco.rest.core.RestAPI; @@ -170,8 +171,8 @@ public class FilePlanComponentAPI extends RestAPI UserModel currentUser = usingRestWrapper().getTestUser(); Response response = given() .auth().basic(currentUser.getUsername(), currentUser.getPassword()) - .multiPart("nodeBodyCreate", toJson(electronicRecordModel), "application/json") - .multiPart("filedata", recordContent, "application/octet-stream") + .multiPart("nodeBodyCreate", toJson(electronicRecordModel), ContentType.JSON.name()) + .multiPart("filedata", recordContent, ContentType.BINARY.name()) .expect() .statusCode(HttpStatus.CREATED.value()) .when() diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java index f9c05fcf80..a6b111ee11 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java @@ -11,30 +11,21 @@ */ package org.alfresco.rest.rm.community.fileplancomponents; -import org.testng.annotations.DataProvider; -import org.testng.annotations.Test; - import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; -import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE; -import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.CONTENT_TYPE; -import static org.alfresco.rest.rm.community.util.PojoUtility.toJson; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.CREATED; -import static org.testng.Assert.assertFalse; -import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertTrue; -import java.util.Random; - import org.alfresco.rest.rm.community.base.BaseRestTest; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent; import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentProperties; import org.alfresco.rest.rm.community.requests.FilePlanComponentAPI; -import org.alfresco.rest.rm.community.requests.RMSiteAPI; import org.alfresco.utility.data.DataUser; import org.springframework.beans.factory.annotation.Autowired; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; /** * @@ -49,9 +40,6 @@ public class ElectronicRecordTests extends BaseRestTest @Autowired private DataUser dataUser; - @Autowired - private RMSiteAPI rmSiteAPI; - /** image resource file to be used for records body */ private static final String IMAGE_FILE = "money.JPG"; From a1bc42433b9e7896f65abcf9e43374545a00bedb Mon Sep 17 00:00:00 2001 From: Kristijan Conkas Date: Thu, 8 Dec 2016 10:22:02 +0000 Subject: [PATCH 35/42] RM-4405: invalid containers tests + utility method renaming --- .../requests/FilePlanComponentAPI.java | 3 - .../rest/rm/community/base/BaseRestTest.java | 3 +- .../ElectronicRecordTests.java | 56 ++++++++++++++++++- .../NonElectronicRecordTests.java | 4 +- 4 files changed, 58 insertions(+), 8 deletions(-) diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java index 8164f3afbc..7bbde28e17 100644 --- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java +++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java @@ -51,7 +51,6 @@ import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponent import org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentsCollection; import org.alfresco.utility.model.UserModel; import org.springframework.context.annotation.Scope; -import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; /** @@ -173,8 +172,6 @@ public class FilePlanComponentAPI extends RestAPI .auth().basic(currentUser.getUsername(), currentUser.getPassword()) .multiPart("nodeBodyCreate", toJson(electronicRecordModel), ContentType.JSON.name()) .multiPart("filedata", recordContent, ContentType.BINARY.name()) - .expect() - .statusCode(HttpStatus.CREATED.value()) .when() .post("fileplan-components/{fileplanComponentId}/children?{parameters}", parentId, getParameters()) .andReturn(); diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java index 96362a07bd..4c95788f3e 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java @@ -30,7 +30,6 @@ import static java.lang.Integer.parseInt; import static org.alfresco.rest.rm.community.base.TestData.CATEGORY_TITLE; import static org.alfresco.rest.rm.community.base.TestData.FOLDER_TITLE; -import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.UNFILED_RECORD_FOLDER_TYPE; @@ -222,7 +221,7 @@ public class BaseRestTest extends RestTest * @return record folder * @throws Exception on failed creation */ - public FilePlanComponent createFolderInFilePlan(UserModel user, String parentId) throws Exception + public FilePlanComponent createCategoryFolderInFilePlan(UserModel user, String parentId) throws Exception { filePlanComponentAPI.usingRestWrapper().authenticateUser(user); diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java index a6b111ee11..6054537aac 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java @@ -12,10 +12,13 @@ package org.alfresco.rest.rm.community.fileplancomponents; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS; +import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS; import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.CONTENT_TYPE; import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric; import static org.springframework.http.HttpStatus.CREATED; +import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY; import static org.testng.Assert.assertTrue; import org.alfresco.rest.rm.community.base.BaseRestTest; @@ -43,12 +46,28 @@ public class ElectronicRecordTests extends BaseRestTest /** image resource file to be used for records body */ private static final String IMAGE_FILE = "money.JPG"; + /** Valid root containers where non-electronic records can be created */ + @DataProvider(name = "invalidParentContainers") + public Object[][] invalidContainers() throws Exception { + return new Object[][] { + // record category + { getFilePlanComponentAsUser(dataUser.getAdminUser(), + createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()).getParentId()) }, + // file plan root + { getFilePlanComponentAsUser(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, + // transfers + { getFilePlanComponentAsUser(dataUser.getAdminUser(), TRANSFERS_ALIAS.toString()) }, + // holds + { getFilePlanComponentAsUser(dataUser.getAdminUser(), HOLDS_ALIAS.toString()) }, + }; + } + /** Valid root containers where non-electronic records can be created */ @DataProvider(name = "validContainers") public Object[][] rootContainers() throws Exception { return new Object[][] { // an arbitrary record folder - { createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, + { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, // unfiled records root { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, // an arbitrary unfiled records folder @@ -57,6 +76,41 @@ public class ElectronicRecordTests extends BaseRestTest } /** + *

+     * Given a parent container that is NOT a record folder or an unfiled record folder
+     * When I try to create an electronic record within the parent container
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * @param container + * @throws Exception + */ + @Test + ( + dataProvider = "invalidParentContainers", + description = "Electronic records can't be created in invalid parent containers" + ) + public void cantCreateElectronicRecordsInInvalidContainers(FilePlanComponent container) throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + FilePlanComponent record = new FilePlanComponent("Record " + getRandomAlphanumeric(), CONTENT_TYPE.toString(), + new FilePlanComponentProperties()); + filePlanComponentAPI.createElectronicRecord(record, IMAGE_FILE, container.getId()); + + // verify the create request status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); + } + + /** + *
+     * Given a parent container that is a record folder
+     * And the record folder is open
+     * When I try to create an electronic record within the parent container
+     * Then the electronic record is created
+     * And the details of the new record are returned
+     * 
+ * and *
      * Given a parent container that is an unfiled record folder or the root unfiled record container
      * When I try to create an electronic record within the parent container
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
index 6990e1f319..9bf340632c 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
@@ -81,7 +81,7 @@ public class NonElectronicRecordTests extends BaseRestTest
     public Object[][] rootContainers() throws Exception {
         return new Object[][] {
             // an arbitrary record folder
-            { createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) },
+            { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) },
             // unfiled records root
             { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) },
             // an arbitrary unfiled records folder
@@ -225,7 +225,7 @@ public class NonElectronicRecordTests extends BaseRestTest
     public void cantCreateInClosedFolder() throws Exception
     {
         filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser());
-        FilePlanComponent recordFolder = createFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString());
+        FilePlanComponent recordFolder = createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString());
         
         // the folder should be open
         assertFalse(recordFolder.getProperties().getIsClosed());

From c1b96b929f92b122c390ce5b80b868547a4d3b03 Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Thu, 8 Dec 2016 10:32:37 +0000
Subject: [PATCH 36/42] RM-4405: now with correct header

---
 .../ElectronicRecordTests.java                | 21 ++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
index 6054537aac..093dc1d40c 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
@@ -4,9 +4,24 @@
  * %%
  * Copyright (C) 2005 - 2016 Alfresco Software Limited
  * %%
- * License rights for this program may be obtained from Alfresco Software, Ltd.
- * pursuant to a written agreement and any use of this program without such an
- * agreement is prohibited.
+ * This file is part of the Alfresco software.
+ * -
+ * If the software was purchased under a paid Alfresco license, the terms of
+ * the paid license agreement will prevail.  Otherwise, the software is
+ * provided under the following open source license terms:
+ * -
+ * Alfresco is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * -
+ * Alfresco is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ * -
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with Alfresco. If not, see .
  * #L%
  */
 package org.alfresco.rest.rm.community.fileplancomponents;

From bf1086b5c988317bde48067483a3959c36bac830 Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Thu, 8 Dec 2016 12:15:34 +0000
Subject: [PATCH 37/42] RM-4405: mandatory properties tests

---
 .../ElectronicRecordTests.java                | 85 ++++++++++++++++++-
 1 file changed, 84 insertions(+), 1 deletion(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
index 093dc1d40c..1d2692c7a8 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
@@ -27,13 +27,17 @@
 package org.alfresco.rest.rm.community.fileplancomponents;
 
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS;
-import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS;
+import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.CONTENT_TYPE;
+import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE;
+import static org.alfresco.rest.rm.community.util.PojoUtility.toJson;
 import static org.alfresco.utility.data.RandomData.getRandomAlphanumeric;
+import static org.springframework.http.HttpStatus.BAD_REQUEST;
 import static org.springframework.http.HttpStatus.CREATED;
 import static org.springframework.http.HttpStatus.UNPROCESSABLE_ENTITY;
+import static org.testng.Assert.assertFalse;
 import static org.testng.Assert.assertTrue;
 
 import org.alfresco.rest.rm.community.base.BaseRestTest;
@@ -117,6 +121,85 @@ public class ElectronicRecordTests extends BaseRestTest
         filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY);
     }
 
+    /**
+     * 
+     * Given a parent container that is a record folder
+     * And the record folder is closed 
+     * When I try to create an electronic record within the parent container
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * @throws Exception + */ + @Test(description = "Electronic record can't be created in closed record folder") + public void cantCreateElectronicRecordInClosedFolder() throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + FilePlanComponent recordFolder = createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()); + + // the folder should be open + assertFalse(recordFolder.getProperties().getIsClosed()); + + // close the folder + closeFolder(recordFolder.getId()); + + // try to create it, this should fail + FilePlanComponent record = new FilePlanComponent("Record " + getRandomAlphanumeric(), CONTENT_TYPE.toString(), + new FilePlanComponentProperties()); + filePlanComponentAPI.createElectronicRecord(record, IMAGE_FILE, recordFolder.getId()); + + // verify the status code + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(UNPROCESSABLE_ENTITY); + } + + /** + *
+     * Given a parent container that is a record folder
+     * And the record folder is open
+     * When I try to create an electronic record within the parent container
+     * And I do not provide all the required mandatory property values
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * and + *
+     * Given a parent container that is an unfiled record folder or the root unfiled record container
+     * When I try to create an electronic record within the parent container
+     * And I do not provide all the required mandatory property values
+     * Then nothing happens
+     * And an error is reported
+     * 
+ * @param container + * @throws Exception + */ + @Test + ( + dataProvider = "validContainers", + description = "Electronic record can only be created if all mandatory properties are given" + ) + public void canCreateElectronicRecordOnlyWithMandatoryProperties(FilePlanComponent container) throws Exception + { + filePlanComponentAPI.usingRestWrapper().authenticateUser(dataUser.getAdminUser()); + + logger.info("Root container:\n" + toJson(container)); + if (container.getNodeType().equals(RECORD_FOLDER_TYPE.toString())) + { + // only record folders can be open or closed + assertFalse(container.getProperties().getIsClosed()); + } + + // component without name + FilePlanComponent record = new FilePlanComponent(); + record.setNodeType(CONTENT_TYPE.toString()); + record.setProperties(new FilePlanComponentProperties()); + + // try to create it + filePlanComponentAPI.createFilePlanComponent(record, container.getId()); + + // verify the status code is BAD_REQUEST + filePlanComponentAPI.usingRestWrapper().assertStatusCodeIs(BAD_REQUEST); + } + /** *
      * Given a parent container that is a record folder

From b2698cf8a2b960f665650b8c1685ec4787c284b3 Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Thu, 8 Dec 2016 13:29:05 +0000
Subject: [PATCH 38/42] RM-4405: fixed erroneous comments

---
 .../community/fileplancomponents/ElectronicRecordTests.java   | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
index 1d2692c7a8..7f11a05162 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
@@ -65,7 +65,7 @@ public class ElectronicRecordTests extends BaseRestTest
     /** image resource file to be used for records body */
     private static final String IMAGE_FILE = "money.JPG";
     
-    /** Valid root containers where non-electronic records can be created */
+    /** Valid root containers where electronic records can be created */
     @DataProvider(name = "invalidParentContainers")
     public Object[][] invalidContainers() throws Exception {
         return new Object[][] {
@@ -81,7 +81,7 @@ public class ElectronicRecordTests extends BaseRestTest
         };
     }
     
-    /** Valid root containers where non-electronic records can be created */
+    /** Valid root containers where electronic records can be created */
     @DataProvider(name = "validContainers")
     public Object[][] rootContainers() throws Exception {
         return new Object[][] {

From d5ff320f56fce0d2ac55142b5618c816efda2050 Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Fri, 9 Dec 2016 15:23:20 +0000
Subject: [PATCH 39/42] RM-4405: CI remediation.

---
 .../requests/FilePlanComponentAPI.java        | 28 ++++++-------------
 .../rest/rm/community/base/BaseRestTest.java  | 16 +++++++++++
 .../rest/rm/community/base/TestData.java      |  3 +-
 .../ElectronicRecordTests.java                | 21 ++++----------
 .../NonElectronicRecordTests.java             | 17 +----------
 5 files changed, 32 insertions(+), 53 deletions(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java
index 7bbde28e17..9d8c385a91 100644
--- a/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java
+++ b/rm-automation/rm-automation-community-rest-api/src/main/java/org/alfresco/rest/rm/community/requests/FilePlanComponentAPI.java
@@ -129,8 +129,14 @@ public class FilePlanComponentAPI extends RestAPI
     public FilePlanComponent createFilePlanComponent(FilePlanComponent filePlanComponentModel, String parentId) throws Exception
     {
         mandatoryObject("filePlanComponentProperties", filePlanComponentModel);
-
-        return doCreateFilePlanComponent(toJson(filePlanComponentModel), parentId);
+        mandatoryString("parentId", parentId);
+        
+        return usingRestWrapper().processModel(FilePlanComponent.class, requestWithBody(
+            POST,
+            toJson(filePlanComponentModel),
+            "fileplan-components/{fileplanComponentId}/children?{parameters}",
+            parentId,
+            getParameters()));
     }
     
     /**
@@ -181,24 +187,6 @@ public class FilePlanComponentAPI extends RestAPI
         /* return a FilePlanComponent object representing Response */
         return response.jsonPath().getObject("entry", FilePlanComponent.class);
     }
-    
-    /**
-     * Helper method for handling low-level fileplan component creation requests
-     * @param requestBody
-     * @param parentId
-     * @return Newly created {@link FilePlanComponent}
-     * @throws Exception
-     */
-    private FilePlanComponent doCreateFilePlanComponent(String requestBody, String parentId) throws Exception
-    {
-        mandatoryString("parentId", parentId);
-        return usingRestWrapper().processModel(FilePlanComponent.class, requestWithBody(
-            POST,
-            requestBody,
-            "fileplan-components/{fileplanComponentId}/children?{parameters}",
-            parentId,
-            getParameters()));
-    }
 
     /**
      * Updates a file plan component
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
index 4c95788f3e..4a11cf446c 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
@@ -30,6 +30,8 @@ import static java.lang.Integer.parseInt;
 
 import static org.alfresco.rest.rm.community.base.TestData.CATEGORY_TITLE;
 import static org.alfresco.rest.rm.community.base.TestData.FOLDER_TITLE;
+import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS;
+import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.UNFILED_RECORD_FOLDER_TYPE;
@@ -55,6 +57,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.PropertySource;
 import org.testng.annotations.BeforeClass;
+import org.testng.annotations.DataProvider;
 
 /**
  * Base class for all IG REST API Tests
@@ -98,6 +101,19 @@ public class BaseRestTest extends RestTest
     public static final String RM_TITLE = "Records Management";
     public static final String RM_DESCRIPTION = "Records Management Site";
 
+    /** Valid root containers where electronic and non-electronic records can be created */
+    @DataProvider(name = "validContainers")
+    public Object[][] rootContainers() throws Exception {
+        return new Object[][] {
+            // an arbitrary record folder
+            { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) },
+            // unfiled records root
+            { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) },
+            // an arbitrary unfiled records folder
+            { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) }
+        };
+    }
+    
     /**
      * @see org.alfresco.rest.RestTest#checkServerHealth()
      */
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/TestData.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/TestData.java
index 43c9147d5f..ee890dfab9 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/TestData.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/TestData.java
@@ -50,7 +50,7 @@ import org.testng.annotations.DataProvider;
  * @since 2.6
  */
 public interface TestData
-{
+{    
     /**
      * A user with ALFRESCO_ADMINISTRATORS role.
      * 

"GROUP_ANOTHER_ADMIN_EXISTS" The ANOTHER_ADMIN user has been created. @@ -141,5 +141,4 @@ public interface TestData { CONTENT_TYPE.toString()} }; } - } diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java index 7f11a05162..c63182bdb3 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java @@ -50,9 +50,13 @@ import org.testng.annotations.DataProvider; import org.testng.annotations.Test; /** - * + * Create/File electronic records tests + *
+ * These tests only test the creation and filing of electronic records, update at + * present isn't implemented in the API under test. + *

* @author Kristijan Conkas - * @since + * @since 2.6 */ public class ElectronicRecordTests extends BaseRestTest { @@ -81,19 +85,6 @@ public class ElectronicRecordTests extends BaseRestTest }; } - /** Valid root containers where electronic records can be created */ - @DataProvider(name = "validContainers") - public Object[][] rootContainers() throws Exception { - return new Object[][] { - // an arbitrary record folder - { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) }, - // unfiled records root - { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) }, - // an arbitrary unfiled records folder - { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) } - }; - } - /** *

      * Given a parent container that is NOT a record folder or an unfiled record folder
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
index 9bf340632c..7fa64e3a45 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
@@ -31,7 +31,6 @@ import static java.util.Arrays.asList;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS;
-import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.NON_ELECTRONIC_RECORD_TYPE;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_CATEGORY_TYPE;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE;
@@ -56,7 +55,6 @@ import org.alfresco.utility.data.DataUser;
 import org.alfresco.utility.model.SiteModel;
 import org.alfresco.utility.model.UserModel;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 
 /**
@@ -75,20 +73,7 @@ public class NonElectronicRecordTests extends BaseRestTest
     
     @Autowired
     private RMSiteAPI rmSiteAPI;
-    
-    /** Valid root containers where non-electronic records can be created */
-    @DataProvider(name = "validContainers")
-    public Object[][] rootContainers() throws Exception {
-        return new Object[][] {
-            // an arbitrary record folder
-            { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) },
-            // unfiled records root
-            { getFilePlanComponentAsUser(dataUser.getAdminUser(), UNFILED_RECORDS_CONTAINER_ALIAS.toString()) },
-            // an arbitrary unfiled records folder
-            { createUnfiledRecordsFolder(UNFILED_RECORDS_CONTAINER_ALIAS.toString(), "Unfiled Folder " + getRandomAlphanumeric()) }
-        };
-    }
-    
+        
     /**
      * 
      * Given a parent container that is NOT a record folder or an unfiled record folder

From f58926c55fe33217583163b41d9407b04bd640bb Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Fri, 9 Dec 2016 15:26:27 +0000
Subject: [PATCH 40/42] RM-4405: import tidy-up

---
 .../rm/community/fileplancomponents/ElectronicRecordTests.java   | 1 -
 1 file changed, 1 deletion(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
index c63182bdb3..b3dd3e7123 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
@@ -29,7 +29,6 @@ package org.alfresco.rest.rm.community.fileplancomponents;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.FILE_PLAN_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.HOLDS_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.TRANSFERS_ALIAS;
-import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentAlias.UNFILED_RECORDS_CONTAINER_ALIAS;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.CONTENT_TYPE;
 import static org.alfresco.rest.rm.community.model.fileplancomponents.FilePlanComponentType.RECORD_FOLDER_TYPE;
 import static org.alfresco.rest.rm.community.util.PojoUtility.toJson;

From 7922a3d995882b657f6755d26aec25b3ba97ef9d Mon Sep 17 00:00:00 2001
From: Kristijan Conkas 
Date: Fri, 9 Dec 2016 15:43:56 +0000
Subject: [PATCH 41/42] RM-4405: renamed valid containers data provider

---
 .../org/alfresco/rest/rm/community/base/BaseRestTest.java   | 4 ++--
 .../community/fileplancomponents/ElectronicRecordTests.java | 4 ++--
 .../fileplancomponents/NonElectronicRecordTests.java        | 6 +++---
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
index 4a11cf446c..fc32735837 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/base/BaseRestTest.java
@@ -102,8 +102,8 @@ public class BaseRestTest extends RestTest
     public static final String RM_DESCRIPTION = "Records Management Site";
 
     /** Valid root containers where electronic and non-electronic records can be created */
-    @DataProvider(name = "validContainers")
-    public Object[][] rootContainers() throws Exception {
+    @DataProvider(name = "validRootContainers")
+    public Object[][] getValidRootContainers() throws Exception {
         return new Object[][] {
             // an arbitrary record folder
             { createCategoryFolderInFilePlan(dataUser.getAdminUser(), FILE_PLAN_ALIAS.toString()) },
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
index b3dd3e7123..2b30770dc8 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/ElectronicRecordTests.java
@@ -164,7 +164,7 @@ public class ElectronicRecordTests extends BaseRestTest
      */
     @Test
     (
-        dataProvider = "validContainers", 
+        dataProvider = "validRootContainers", 
         description = "Electronic record can only be created if all mandatory properties are given"
     )
     public void canCreateElectronicRecordOnlyWithMandatoryProperties(FilePlanComponent container) throws Exception
@@ -209,7 +209,7 @@ public class ElectronicRecordTests extends BaseRestTest
      */
     @Test
     (
-        dataProvider = "validContainers",
+        dataProvider = "validRootContainers",
         description = "Electronic records can be created in unfiled record folder or unfiled record root"
     )
     public void canCreateElectronicRecordsInValidContainers(FilePlanComponent container) throws Exception
diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
index 7fa64e3a45..c8cc153545 100644
--- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
+++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/fileplancomponents/NonElectronicRecordTests.java
@@ -138,7 +138,7 @@ public class NonElectronicRecordTests extends BaseRestTest
      */
     @Test
     (
-        dataProvider = "validContainers",
+        dataProvider = "validRootContainers",
         description = "Non-electronic records can be created in valid containers"
     )
     public void canCreateInValidContainers(FilePlanComponent container) throws Exception
@@ -251,7 +251,7 @@ public class NonElectronicRecordTests extends BaseRestTest
      */
     @Test
     (
-        dataProvider = "validContainers", 
+        dataProvider = "validRootContainers", 
         description = "Non-electronic record can only be created if all mandatory properties are given"
     )
     public void allMandatoryPropertiesRequired(FilePlanComponent container) throws Exception
@@ -310,7 +310,7 @@ public class NonElectronicRecordTests extends BaseRestTest
      */
     @Test
     (
-        dataProvider = "validContainers", 
+        dataProvider = "validRootContainers", 
         description = "Non-electronic record can't be created if user doesn't have RM privileges"
     )
     public void cantCreateIfNoRmPrivileges(FilePlanComponent container) throws Exception

From 88d64bc2333dc0a0c249b6bc3b9702c1d6a97310 Mon Sep 17 00:00:00 2001
From: Ana Bozianu 
Date: Sat, 10 Dec 2016 14:01:16 +0200
Subject: [PATCH 42/42] RM-4528 - extract original exception so it can be
 properly mapped to api error code

---
 .../FileplanComponentChildrenRelation.java    | 28 ++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/FileplanComponentChildrenRelation.java b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/FileplanComponentChildrenRelation.java
index 9573442927..5c16af45ab 100644
--- a/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/FileplanComponentChildrenRelation.java
+++ b/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/nodes/FileplanComponentChildrenRelation.java
@@ -31,6 +31,9 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.alfresco.rest.api.model.Node;
+import org.alfresco.rest.framework.WebApiDescription;
+import org.alfresco.rest.framework.WebApiParam;
+import org.alfresco.rest.framework.core.exceptions.ApiException;
 import org.alfresco.rest.framework.resource.RelationshipResource;
 import org.alfresco.rest.framework.resource.actions.interfaces.MultiPartRelationshipResourceAction;
 import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction;
@@ -59,12 +62,14 @@ public class FileplanComponentChildrenRelation implements RelationshipResourceAc
     }
 
     @Override
+    @WebApiDescription(title = "Return a paged list of fileplan components for the container identified by parentFolderNodeId")
     public CollectionWithPagingInfo readAll(String parentFolderNodeId, Parameters parameters)
     {
         return nodes.listChildren(parentFolderNodeId, parameters);
     }
 
     @Override
+    @WebApiDescription(title="Create one (or more) nodes as children of container identified by parentFolderNodeId")
     public List create(String parentFolderNodeId, List nodeInfos, Parameters parameters)
     {
         List result = new ArrayList<>(nodeInfos.size());
@@ -78,8 +83,29 @@ public class FileplanComponentChildrenRelation implements RelationshipResourceAc
     }
 
     @Override
+    @WebApiDescription(title = "Upload file content and meta-data into the repository.")
+    @WebApiParam(name = "formData", title = "A single form data", description = "A single form data which holds FormFields.")
     public Node create(String parentFolderNodeId, FormData formData, Parameters parameters, WithResponse withResponse)
     {
-        return nodes.upload(parentFolderNodeId, formData, parameters);
+        try
+        {
+            return nodes.upload(parentFolderNodeId, formData, parameters);
+        }
+        catch (ApiException apiException)
+        {
+            /*
+             * The upload method encapsulates most exceptions that can occur on node creation in an ApiException. 
+             * To allow the API framework to correctly map the exception to the API error code we throw the original exception.
+             */
+            Throwable originalException = apiException.getCause();
+            if (originalException != null && originalException instanceof RuntimeException)
+            {
+                throw (RuntimeException) originalException;
+            }
+            else
+            {
+                throw apiException;
+            }
+        }
     }
 }