From 5e6bc0ae992e872b28a25fa0d95a644b0fe08830 Mon Sep 17 00:00:00 2001 From: Martin Muller Date: Fri, 5 Aug 2016 13:46:22 +0000 Subject: [PATCH] Merged RETURN-OF-THE-API (5.2.0) to 5.2.N (5.2.1) 128476 jvonka: REPO-839: Follow-on to fix subtle issue in mimeType guess (ie. application/octet-stream should be last resort, if magic bytes indicate text and there is no file ext) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@129161 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/rest/api/tests/NodeApiTest.java | 15 ++++ .../publicapi/upload/CMIS-Delete.json | 68 +++++++++++++++++++ 2 files changed, 83 insertions(+) create mode 100644 source/test-resources/publicapi/upload/CMIS-Delete.json diff --git a/source/test-java/org/alfresco/rest/api/tests/NodeApiTest.java b/source/test-java/org/alfresco/rest/api/tests/NodeApiTest.java index 845bd8f3ca..cd3a15873e 100644 --- a/source/test-java/org/alfresco/rest/api/tests/NodeApiTest.java +++ b/source/test-java/org/alfresco/rest/api/tests/NodeApiTest.java @@ -76,6 +76,7 @@ import org.alfresco.service.cmr.security.MutableAuthenticationService; import org.alfresco.service.cmr.security.PermissionService; import org.alfresco.service.cmr.security.PersonService; import org.alfresco.service.cmr.site.SiteVisibility; +import org.alfresco.util.GUID; import org.alfresco.util.TempFileProvider; import org.json.simple.JSONObject; import org.junit.After; @@ -1021,6 +1022,20 @@ public class NodeApiTest extends AbstractBaseApiTest contentInfo = document.getContent(); assertEquals(MimetypeMap.MIMETYPE_OPENXML_WORDPROCESSING, contentInfo.getMimeType()); assertEquals("UTF-8", contentInfo.getEncoding()); + + // additional test + fileName = "CMIS-Delete.json"; + file = getResourceFile(fileName); + + multiPartBuilder = MultiPartBuilder.create() + .setFileData(new FileData("special-"+GUID.generate(), file)); + reqBody = multiPartBuilder.build(); + + response = post(getNodeChildrenUrl(fId), user1, reqBody.getBody(), null, reqBody.getContentType(), 201); + document = RestApiUtil.parseRestApiEntry(response.getJsonResponse(), Document.class); + contentInfo = document.getContent(); + assertEquals(MimetypeMap.MIMETYPE_TEXT_PLAIN, contentInfo.getMimeType()); + assertEquals("UTF-8", contentInfo.getEncoding()); // cleanup delete(URL_NODES, user1, fId, 204); diff --git a/source/test-resources/publicapi/upload/CMIS-Delete.json b/source/test-resources/publicapi/upload/CMIS-Delete.json new file mode 100644 index 0000000000..59d4581fbb --- /dev/null +++ b/source/test-resources/publicapi/upload/CMIS-Delete.json @@ -0,0 +1,68 @@ +{ + "id": "9703fafd-3041-c6fb-2f20-367eeb1b7697", + "name": "CMIS Delete", + "description": "", + "order": [ + "7d4fa49e-125d-7f40-328d-6998fd383b1c", + "fb149dbf-4725-db4c-163a-a541ce0bb830" + ], + "folders": [], + "timestamp": 1461678623161, + "owner": "250102", + "remoteLink": "", + "public": false, + "requests": [ + { + "id": "7d4fa49e-125d-7f40-328d-6998fd383b1c", + "headers": "Authorization: Basic xxxx\n", + "url": "{{baseUrl}}/{{networkId}}/public/cmis/versions/1.1/browser/root?objectId=d57861c1-48a3-4e3f-b1e3-9822e52707d1", + "preRequestScript": "", + "pathVariables": {}, + "method": "POST", + "data": [ + { + "key": "cmisaction", + "value": "delete", + "type": "text", + "enabled": true + } + ], + "dataMode": "urlencoded", + "tests": null, + "currentHelper": "normal", + "helperAttributes": {}, + "time": 1461678196209, + "name": "Delete object", + "description": "NOTE: This will delete an empty folder but not a folder with children, use \"deletetree\" action for that!", + "collectionId": "9703fafd-3041-c6fb-2f20-367eeb1b7697", + "responses": [] + }, + { + "id": "fb149dbf-4725-db4c-163a-a541ce0bb830", + "headers": "Authorization: Basic xxxx\n", + "url": "{{baseUrl}}/{{networkId}}/public/cmis/versions/1.1/browser/root?objectId=14463495-b278-45f2-bef4-d9d2d0f91485", + "pathVariables": {}, + "preRequestScript": "", + "method": "POST", + "collectionId": "9703fafd-3041-c6fb-2f20-367eeb1b7697", + "data": [ + { + "key": "cmisaction", + "value": "deletetree", + "type": "text", + "enabled": true + } + ], + "dataMode": "urlencoded", + "name": "Delete folder", + "description": "", + "descriptionFormat": "html", + "time": 1461678531597, + "version": 2, + "responses": [], + "tests": null, + "currentHelper": "normal", + "helperAttributes": {} + } + ] +} \ No newline at end of file