From 40e8fdd0fb35bafb4264da2e1f94de8abf342aa7 Mon Sep 17 00:00:00 2001 From: Alexandru Epure Date: Tue, 9 Aug 2016 14:08:06 +0000 Subject: [PATCH] Merged 5.2.N (5.2.1) to HEAD (5.2) 129056 amorarasu: MNT-16381: Transformers must validate the content stream mimetype - When validating a mime-type, check on the type alias as well. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@129311 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../transform/DifferrentMimeTypeTest.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/test-java/org/alfresco/repo/content/transform/DifferrentMimeTypeTest.java b/source/test-java/org/alfresco/repo/content/transform/DifferrentMimeTypeTest.java index 4e12bee675..75db4b2111 100644 --- a/source/test-java/org/alfresco/repo/content/transform/DifferrentMimeTypeTest.java +++ b/source/test-java/org/alfresco/repo/content/transform/DifferrentMimeTypeTest.java @@ -35,6 +35,7 @@ import java.util.Map; import org.alfresco.model.ContentModel; import org.alfresco.repo.content.MimetypeMap; +import org.alfresco.repo.content.filestore.FileContentReader; import org.alfresco.repo.content.filestore.FileContentWriter; import org.alfresco.repo.model.Repository; import org.alfresco.repo.security.authentication.AuthenticationUtil; @@ -261,6 +262,22 @@ public class DifferrentMimeTypeTest extends TestCase contentNodeRef = AuthenticationUtil.runAs(createTargetWork, AuthenticationUtil.getSystemUserName()); this.nodesToDeleteAfterTest.add(contentNodeRef); } + + //MNT-16381 related: make sure we match a mime-type with known type aliases and don't dismiss documents as having non-matching type<->actual content + public void testTypeAliasesMatch() throws Exception + { + File testFile = AbstractContentTransformerTest.loadNamedQuickTestFile("quick.xml"); + ContentReader sourceReader = new FileContentReader(testFile); + sourceReader.setMimetype(MimetypeMap.MIMETYPE_XML); // "text/xml" + // Detected mimetype is "application/xml" + assertNull(mimetypeService.getMimetypeIfNotMatches(sourceReader)); + + testFile = AbstractContentTransformerTest.loadNamedQuickTestFile("quick.bmp"); + sourceReader = new FileContentReader(testFile); + sourceReader.setMimetype("image/bmp"); + // Detected mimetype is "image/x-ms-bmp" + assertNull(mimetypeService.getMimetypeIfNotMatches(sourceReader)); + } @After public void deleteTemporaryNodeRefsAndTempFiles()