diff --git a/source/java/org/alfresco/repo/content/metadata/DWGMetadataExtracterTest.java b/source/java/org/alfresco/repo/content/metadata/DWGMetadataExtracterTest.java index ab43839c2f..ec4a86e092 100644 --- a/source/java/org/alfresco/repo/content/metadata/DWGMetadataExtracterTest.java +++ b/source/java/org/alfresco/repo/content/metadata/DWGMetadataExtracterTest.java @@ -44,6 +44,9 @@ public class DWGMetadataExtracterTest extends AbstractMetadataExtracterTest private DWGMetadataExtracter extracter; private static final QName TIKA_LAST_AUTHOR_TEST_PROPERTY = QName.createQName("TikaLastAuthorTestProp"); + private static final QName TIKA_CUSTOM_TEST_PROPERTY = + QName.createQName("TikaCustomTestProp"); + private static final String TIKA_CUSTOM_KEY = "customprop1"; @SuppressWarnings("deprecation") @Override @@ -63,7 +66,10 @@ public class DWGMetadataExtracterTest extends AbstractMetadataExtracterTest Set tlaSet = new HashSet(); tlaSet.add(TIKA_LAST_AUTHOR_TEST_PROPERTY); + Set custSet = new HashSet(); + custSet.add(TIKA_CUSTOM_TEST_PROPERTY); newMap.put( Metadata.LAST_AUTHOR, tlaSet ); + newMap.put( TIKA_CUSTOM_KEY, custSet ); extracter.setMapping(newMap); } @@ -138,5 +144,28 @@ public class DWGMetadataExtracterTest extends AbstractMetadataExtracterTest "paolon", DefaultTypeConverter.INSTANCE.convert(String.class, properties.get(TIKA_LAST_AUTHOR_TEST_PROPERTY))); } + + /** + * Test 2010 custom properties (ALF-16628) + */ + public void test2010CustomProperties() throws Exception + { + String mimetype = MimetypeMap.MIMETYPE_APP_DWG; + + String filename = "quick2010CustomProps.dwg"; + URL url = AbstractContentTransformerTest.class.getClassLoader().getResource("quick/" + filename); + File file = new File(url.getFile()); + + Map properties = extractFromFile(file, mimetype); + + // check we got something + assertFalse("extractFromMimetype should return at least some properties, none found for " + mimetype, + properties.isEmpty()); + + // check common metadata + testCommonMetadata(mimetype, properties); + + assertEquals("Custom DWG property not found", "valueforcustomprop1", properties.get(TIKA_CUSTOM_TEST_PROPERTY)); + } } diff --git a/source/test-resources/quick/quick2010CustomProps.dwg b/source/test-resources/quick/quick2010CustomProps.dwg new file mode 100644 index 0000000000..11867214ad Binary files /dev/null and b/source/test-resources/quick/quick2010CustomProps.dwg differ