You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2018/12/20 16:27:26 UTC

svn commit: r1849414 - /pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java

Author: tilman
Date: Thu Dec 20 16:27:26 2018
New Revision: 1849414

URL: http://svn.apache.org/viewvc?rev=1849414&view=rev
Log:
PDFBOX-4071: DRY refactoring

Modified:
    pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java

Modified: pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java?rev=1849414&r1=1849413&r2=1849414&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java (original)
+++ pdfbox/branches/2.0/pdfbox/src/test/java/org/apache/pdfbox/multipdf/PDFMergerUtilityTest.java Thu Dec 20 16:27:26 2018
@@ -188,12 +188,10 @@ public class PDFMergerUtilityTest extend
         dst.close();
 
         PDDocument doc = PDDocument.load(new File(TARGETTESTDIR, "PDFBOX-3999-GeneralForbearance-merged.pdf"));
-        PDPageTree pageTree = doc.getPages();
 
-        // check for orphan pages in the StructTreeRoot/K and StructTreeRoot/ParentTree trees.
-        PDStructureTreeRoot structureTreeRoot = doc.getDocumentCatalog().getStructureTreeRoot();
-        checkElement(pageTree, structureTreeRoot.getParentTree().getCOSObject());
-        checkElement(pageTree, structureTreeRoot.getK());
+        checkForPageOrphans(doc);
+
+        doc.close();
     }
 
     /**
@@ -226,16 +224,12 @@ public class PDFMergerUtilityTest extend
         dst.close();
 
         doc = PDDocument.load(new File(TARGETTESTDIR, "PDFBOX-3999-GeneralForbearance-flattened-merged.pdf"));
-        PDPageTree pageTree = doc.getPages();
 
-        // check for orphan pages in the StructTreeRoot/K and StructTreeRoot/ParentTree trees.
-        PDStructureTreeRoot structureTreeRoot = doc.getDocumentCatalog().getStructureTreeRoot();
-        checkElement(pageTree, structureTreeRoot.getParentTree().getCOSObject());
-        checkElement(pageTree, structureTreeRoot.getK());
+        checkForPageOrphans(doc);
 
         // Assume that the merged tree has double element count
         elementCounter = new ElementCounter();
-        elementCounter.walk(structureTreeRoot.getK());
+        elementCounter.walk(doc.getDocumentCatalog().getStructureTreeRoot().getK());
         assertEquals(singleCnt * 2, elementCounter.cnt);
         assertEquals(singleSetSize * 2, elementCounter.set.size());
 
@@ -256,15 +250,10 @@ public class PDFMergerUtilityTest extend
         src.close();
         dst.save(new File(TARGETTESTDIR, "PDFBOX-4408-merged.pdf"));
         checkWithNumberTree(dst);
-
-        // check for orphan pages in the StructTreeRoot/K and StructTreeRoot/ParentTree trees.
-        PDPageTree pageTree = dst.getPages();
-        PDStructureTreeRoot structureTreeRoot = dst.getDocumentCatalog().getStructureTreeRoot();
-        checkElement(pageTree, structureTreeRoot.getParentTree().getCOSObject());
-        checkElement(pageTree, structureTreeRoot.getK());
-
+        checkForPageOrphans(dst);
         dst.close();
     }
+
     /**
      * PDFBOX-4408: Check that StructParent values are found in the ParentTree
      *
@@ -330,6 +319,15 @@ public class PDFMergerUtilityTest extend
         assertTrue(outFile.delete());
     }
 
+    private void checkForPageOrphans(PDDocument doc) throws IOException
+    {
+        // check for orphan pages in the StructTreeRoot/K and StructTreeRoot/ParentTree trees.
+        PDPageTree pageTree = doc.getPages();
+        PDStructureTreeRoot structureTreeRoot = doc.getDocumentCatalog().getStructureTreeRoot();
+        checkElement(pageTree, structureTreeRoot.getParentTree().getCOSObject());
+        checkElement(pageTree, structureTreeRoot.getK());
+    }
+
     private void createSimpleFile(File file) throws IOException
     {
         PDDocument doc = new PDDocument();