„PDFUnit-Java“ ist die erste Implementierung von PDFUnit und auch die Basis für die Implementierung in anderen Programmiersprachen. Für die XML-Implementierung ist PDFUnit-Java auch die technische Laufzeitumgebung. Sofern es möglich ist, werden die Schlüsselwörter aller Implementierungen von PDFUnit gleichlautend zu den Schlüsselwörtern in PDFUnit-Java gewählt.
Die API folgt dem „Fluent Interface“ (http://de.wikipedia.org/wiki/Fluent_Interface), wie die folgenden Beispiele zeigen:
@Test public void hasTextOnFirstPageInPageRegion() throws Exception { String filename = "documentUnderTest.pdf"; int leftX = 50; int upperY = 130; int width = 170; int height = 25; PageRegion pageRegion = new PageRegion(leftX, upperY, width, height); AssertThat.document(filename) .restrictedTo(FIRST_OAGE) .restrictedTo(pageRegion) .hasText() .containing("Content on first page") ; }
@Test public void compareFields() throws Exception { String filenameTest = "documentUnderTest.pdf"; String filenameReference = "reference.pdf"; AssertThat.document(filenameTest) .and(filenameReference) .haveSameFieldsByName() .haveSameFieldsByValue() ; }
@Test public void hasSignature() throws Exception { String filename = "documentUnderTest.pdf"; Calendar signingDate = DateHelper.getCalendar("2007-10-14", "yyyy-MM-dd"); AssertThat.document(filename) .hasSignatureField("sign_rbl") .signedBy("Raymond Berthou") .signedOn(signingDate) ; }
PDFUnit-Java ist in einer eigenen Dokumentation ausführlich beschrieben. Siehe http://www.pdfunit.com/de/documentation/java/index.html.