Skip to content

Commit 77ceb67

Browse files
committed
Add test for PdfExplicitRemoteGoToDestination
DEVSIX-1779
1 parent 238f1b8 commit 77ceb67

File tree

2 files changed

+35
-3
lines changed

2 files changed

+35
-3
lines changed

kernel/src/test/java/com/itextpdf/kernel/pdf/PdfDestinationTest.java

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,23 +42,26 @@ This file is part of the iText (R) project.
4242
*/
4343
package com.itextpdf.kernel.pdf;
4444

45-
import com.itextpdf.io.LogMessageConstant;
4645
import com.itextpdf.kernel.geom.Rectangle;
4746
import com.itextpdf.kernel.pdf.action.PdfAction;
4847
import com.itextpdf.kernel.pdf.annot.PdfLinkAnnotation;
48+
import com.itextpdf.kernel.pdf.filespec.PdfStringFS;
49+
import com.itextpdf.kernel.pdf.navigation.PdfDestination;
4950
import com.itextpdf.kernel.pdf.navigation.PdfExplicitDestination;
51+
import com.itextpdf.kernel.pdf.navigation.PdfExplicitRemoteGoToDestination;
5052
import com.itextpdf.kernel.pdf.navigation.PdfStringDestination;
5153
import com.itextpdf.kernel.utils.CompareTool;
5254
import com.itextpdf.test.ExtendedITextTest;
53-
import com.itextpdf.test.annotations.LogMessage;
54-
import com.itextpdf.test.annotations.LogMessages;
5555
import com.itextpdf.test.annotations.type.IntegrationTest;
5656
import java.io.IOException;
5757
import java.util.Arrays;
5858
import org.junit.BeforeClass;
5959
import org.junit.Test;
6060
import org.junit.experimental.categories.Category;
6161

62+
import java.util.ArrayList;
63+
import java.util.List;
64+
6265
import static org.junit.Assert.assertNull;
6366

6467
@Category(IntegrationTest.class)
@@ -175,4 +178,33 @@ public void destCopyingTest05() throws IOException, InterruptedException {
175178

176179
assertNull(new CompareTool().compareByContent(outFile, cmpFile, destinationFolder, "diff_"));
177180
}
181+
182+
@Test
183+
public void remoteGoToDestinationTest() throws IOException, InterruptedException {
184+
String cmpFile = sourceFolder + "cmp_remoteGoToDestinationTest.pdf";
185+
String outFile = destinationFolder + "remoteGoToDestinationTest.pdf";
186+
187+
PdfDocument out = new PdfDocument(new PdfWriter(outFile));
188+
out.addNewPage();
189+
190+
List<PdfDestination> destinations = new ArrayList<>(7);
191+
destinations.add(PdfExplicitRemoteGoToDestination.createFit(1));
192+
destinations.add(PdfExplicitRemoteGoToDestination.createFitH(1, 10));
193+
destinations.add(PdfExplicitRemoteGoToDestination.createFitV(1, 10));
194+
destinations.add(PdfExplicitRemoteGoToDestination.createFitR(1, 10, 10, 10, 10));
195+
destinations.add(PdfExplicitRemoteGoToDestination.createFitB(1));
196+
destinations.add(PdfExplicitRemoteGoToDestination.createFitBH(1, 10));
197+
destinations.add(PdfExplicitRemoteGoToDestination.createFitBV(1, 10));
198+
199+
int y = 785;
200+
for (PdfDestination destination : destinations) {
201+
PdfLinkAnnotation linkExplicitDest = new PdfLinkAnnotation(new Rectangle(35, y, 160, 15));
202+
PdfAction action = PdfAction.createGoToR(new PdfStringFS("Some fake destination"), destination);
203+
linkExplicitDest.setAction(action);
204+
out.getFirstPage().addAnnotation(linkExplicitDest);
205+
y -= 20;
206+
}
207+
out.close();
208+
assertNull(new CompareTool().compareByContent(outFile, cmpFile, destinationFolder, "diff_"));
209+
}
178210
}

0 commit comments

Comments
 (0)