Author: tilman Date: Fri Jun 27 15:56:44 2025 New Revision: 1926755 URL: http://svn.apache.org/viewvc?rev=1926755&view=rev Log: PDFBOX-6026: test serializer result
Modified: pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/parser/DeserializationTest.java Modified: pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/parser/DeserializationTest.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/parser/DeserializationTest.java?rev=1926755&r1=1926754&r2=1926755&view=diff ============================================================================== --- pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/parser/DeserializationTest.java (original) +++ pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/parser/DeserializationTest.java Fri Jun 27 15:56:44 2025 @@ -28,7 +28,11 @@ import static org.junit.jupiter.api.Asse import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.ByteBuffer; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.List; +import javax.xml.transform.TransformerException; import org.apache.xmpbox.DateConverter; import org.apache.xmpbox.XMPMetadata; @@ -98,12 +102,11 @@ class DeserializationTest } @Test - void testAltBagSeq() throws XmpParsingException + void testAltBagSeq() throws XmpParsingException, TransformerException, NoSuchAlgorithmException { InputStream fis = DomXmpParser.class.getResourceAsStream("/org/apache/xmpbox/parser/AltBagSeqTest.xml"); - xdb.parse(fis); - // XMPMetadata metadata=xdb.parse(fis); - // SaveMetadataHelper.serialize(metadata, true, System.out); + XMPMetadata metadata=xdb.parse(fis); + checkTransform(metadata, "AA3B148E4F802DE4"); } @Test @@ -322,4 +325,14 @@ class DeserializationTest // check creator tool assertEquals("Canon ",meta.getXMPBasicSchema().getCreatorTool()); } + + private void checkTransform(XMPMetadata metadata, String expected) + throws TransformerException, NoSuchAlgorithmException + { + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + serializer.serialize(metadata, baos, true); + byte[] digest = MessageDigest.getInstance("SHA-256").digest(baos.toByteArray()); + String result = String.format("%X", ByteBuffer.wrap(digest).getLong()); + assertEquals(expected, result); + } }