From 014eec4b5ae16d0e99e474eb7e5196d7ed52ee06 Mon Sep 17 00:00:00 2001 From: Alan Davis Date: Tue, 31 Mar 2015 23:20:23 +0000 Subject: [PATCH] Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud) 100864: Merged 5.0.N (5.0.2) to HEAD-BUG-FIX (5.1/Cloud) 100803: Merged DEV to 5.0.N (5.0.2) 100181 : MNT-13646 : Share - copy too many items - Test move/copy 3000 items git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@100934 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../filefolder/FileFolderServiceImplTest.java | 54 ++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) diff --git a/source/test-java/org/alfresco/repo/model/filefolder/FileFolderServiceImplTest.java b/source/test-java/org/alfresco/repo/model/filefolder/FileFolderServiceImplTest.java index 4901dc0c4e..171c51aa08 100644 --- a/source/test-java/org/alfresco/repo/model/filefolder/FileFolderServiceImplTest.java +++ b/source/test-java/org/alfresco/repo/model/filefolder/FileFolderServiceImplTest.java @@ -1734,5 +1734,57 @@ public class FileFolderServiceImplTest extends TestCase results = fileFolderService.list(parentTestRef, true, false, null, sortProps, pagingRequest); expectedNames = new String[] { "B-null", "A-foo", "A-bar", "B-baz", "A-null", "B-biz" }; checkFileList(pageRes, 6, 0, expectedNames); - } + } + + public void testMoveCopy3000Files() throws FileNotFoundException + { + final String CONTAINING_FOLDER = "CONTAINING FOLDER " + GUID.generate(), + FOLDER_1 = "FOLDER 1 " + GUID.generate(), + FOLDER_2 = "FOLDER 2 " + GUID.generate(); + + FileInfo containingFolder = fileFolderService.create(workingRootNodeRef, CONTAINING_FOLDER, ContentModel.TYPE_FOLDER), + folder1 = fileFolderService.create(containingFolder.getNodeRef(), FOLDER_1, ContentModel.TYPE_FOLDER), + folder2 = fileFolderService.create(containingFolder.getNodeRef(), FOLDER_2, ContentModel.TYPE_FOLDER); + + // create 3000 files within the folder + final int COUNT = 3000; + for (int index = 0; index < COUNT; index++) + { + fileFolderService.create(folder1.getNodeRef(), "Name " + index, ContentModel.TYPE_CONTENT); + } + + assertEquals(COUNT, fileFolderService.listFiles(folder1.getNodeRef()).size()); + assertEquals(0, fileFolderService.list(folder2.getNodeRef()).size()); + + // move the folder + fileFolderService.move(folder1.getNodeRef(), folder2.getNodeRef(), null); + + assertEquals(COUNT, fileFolderService.listFiles(folder1.getNodeRef()).size()); + assertEquals(1, fileFolderService.list(folder2.getNodeRef()).size()); + + // move it back + fileFolderService.move(folder1.getNodeRef(), containingFolder.getNodeRef(), null); + + assertEquals(0, fileFolderService.list(folder2.getNodeRef()).size()); + assertEquals(2, fileFolderService.list(containingFolder.getNodeRef()).size()); + + // lets copy it + fileFolderService.copy(folder1.getNodeRef(), folder2.getNodeRef(), null); + + assertEquals(2, fileFolderService.list(containingFolder.getNodeRef()).size()); + + List folders = fileFolderService.listFolders(folder2.getNodeRef()); + assertEquals(1, folders.size()); + assertEquals(COUNT, fileFolderService.listFiles(folders.get(0).getNodeRef()).size()); + + fileFolderService.delete(folder1.getNodeRef()); + assertEquals(1, fileFolderService.list(containingFolder.getNodeRef()).size()); + + folder1 = folders.get(0); + // copy back + FileInfo newFolder = fileFolderService.copy(folder1.getNodeRef(), containingFolder.getNodeRef(), null); + assertEquals(2, fileFolderService.list(containingFolder.getNodeRef()).size()); + assertEquals(COUNT, fileFolderService.list(newFolder.getNodeRef()).size()); + } + }