Es ist manchmal sinnvoll, zu prüfen, ob ein erzeugtes PDF-Dokument genau eine Seite hat. Oder Sie müssen sicherstellen, dass das Dokument weniger als 6 Seiten umfasst, weil sonst ein höheres Briefporto anfällt. PDFUnit bietet deshalb Testmethoden an, die sich auf die Anzahl von Seiten beziehen:
// Method for tests with pages:
.hasNumberOfPages(..)
.hasLessPagesThan(..)
.hasMorePagesThan(..)
Eine konkrete Seitenanzahl wird folgendermaßen überprüft:
@Test public void hasNumberOfPages() throws Exception { String filename = "documentUnderTest.pdf"; AssertThat.document(filename) .hasNumberOfPages(1) ; }
Es sind aber auch Tests mit minimaler oder maximaler Seitenzahl möglich:
@Test public void hasLessPagesThan() throws Exception { String filename = "documentUnderTest.pdf"; int upperLimitExclusive = 6; // The document has 5 pages AssertThat.document(filename) .hasLessPagesThan(upperLimitExclusive) ; }
@Test public void hasMorePagesThan() throws Exception { String filename = "documentUnderTest.pdf"; int lowerLimitExclusive = 2; // The document has 5 pages AssertThat.document(filename) .hasMorePagesThan(lowerLimitExclusive) ; }
Die Methoden können verkettet werden:
@Test public void hasNumberOfPages_InRange() throws Exception { String filename = "documentUnderTest.pdf"; // The current document has 5 pages int lowerLimit_2 = 2; // the limit is exclusive int upperLimit_8 = 8; // the limit is exclusive AssertThat.document(filename) .hasMorePagesThan(lowerLimit_2) .hasLessPagesThan(upperLimit_8) ; }
Verzichten Sie nicht auf Tests mit Seitenzahlen weil Sie denken, sie seien zu einfach. Erfahrungsgemäß finden Sie im Umfeld eines einfachen Tests überraschende Dinge, die Sie ohne den Test nicht gefunden hätten.