From 83f96a01a2cfd64d0a370e74c3f4353eb9a102d2 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Thu, 22 Jan 2015 11:11:45 -0800 Subject: Add API tests: NamedDestsByName, DestGetPageIndex. This also adds a fpdfdoc_embeddertest.cpp to keep the test file name matching with the API call under test. R=bo_xu@foxitsoftware.com Review URL: https://codereview.chromium.org/812933004 --- testing/resources/named_dests.in | 82 +++++++++++++++++++++-------- testing/resources/named_dests.pdf | 108 +++++++++++++++++++++++++++----------- 2 files changed, 139 insertions(+), 51 deletions(-) (limited to 'testing') diff --git a/testing/resources/named_dests.in b/testing/resources/named_dests.in index 6655be9d1b..5309ee23aa 100644 --- a/testing/resources/named_dests.in +++ b/testing/resources/named_dests.in @@ -1,34 +1,43 @@ {{header}} {{object 1 0}} << - /Type /Pages - /Count 1 - /Kids [3 0 R] ->> -endobj -{{object 2 0}} << /Type /Catalog - /Pages 1 0 R + /Pages 2 0 R /Names << /Dests 10 0 R >> /Dests 14 0 R >> endobj +{{object 2 0}} << + /Type /Pages + /Count 2 + /Kids [ + 3 0 R + 4 0 R + ] +>> +endobj +% Page number 0. {{object 3 0}} << /Type /Page - /Parent 1 0 R + /Parent 2 0 R /Resources << - /ProcSets [/PDF /Text /ImageB /ImageC /ImageI] + /Font <> >> + /Contents [21 0 R] /MediaBox [0 0 612 792] - /Contents 5 0 R >> endobj -{{object 5 0}} << - /Length 18 ->> stream -1 0 0 -1 29 763 cm -endstream +% Page number 1. +{{object 4 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font <> + >> + /Contents [22 0 R] + /MediaBox [0 0 612 792] +>> endobj % Root of Dests NameTree {{object 10 0}} << @@ -41,8 +50,8 @@ endobj % Left child for Dests NameTree {{object 11 0}} << /Names [ - (First) [0 /XYZ 0 0 1] - (Next) <> + (First) [1 /XYZ 0 0 1] + (Next) <> ] >> endobj @@ -54,16 +63,47 @@ endobj ] >> endobj -% Old-style top-level Dests dictionary. +% Old-style top-level Dests dictionary. Note that FirstAlternate +% intentionally references non-exisstant page 11 and LastAlternate +% intentionally references non-existant object 999. {{object 14 0}} << - /FirstAlternate [10 /XYZ 200 400 800] - /LastAlternate <> + /FirstAlternate [11 /XYZ 200 400 800] + /LastAlternate <> >> endobj +% Font resource. +{{object 15 0}} << + /Type /Font + /Subtype /Type1 + /BaseFont /Arial +>> +endobj +% Content for page 0. +{{object 21 0}} << + /Length 0 +>> +stream +BT +/F1 20 Tf +100 600 TD (Page1)Tj +ET +endstream +endobj +% Content for page 1. +{{object 22 0}} << + /Length 0 +>> +stream +BT +/F1 20 Tf +100 600 TD (Page2)Tj +ET +endstream +endobj {{xref}} trailer << /Size 6 - /Root 2 0 R + /Root 1 0 R >> {{startxref}} %%EOF diff --git a/testing/resources/named_dests.pdf b/testing/resources/named_dests.pdf index 1f650e7865..e302c196d6 100644 --- a/testing/resources/named_dests.pdf +++ b/testing/resources/named_dests.pdf @@ -1,35 +1,44 @@ %PDF-1.7 % ò¤ô 1 0 obj << - /Type /Pages - /Count 1 - /Kids [3 0 R] ->> -endobj -2 0 obj << /Type /Catalog - /Pages 1 0 R + /Pages 2 0 R /Names << /Dests 10 0 R >> /Dests 14 0 R >> endobj +2 0 obj << + /Type /Pages + /Count 2 + /Kids [ + 3 0 R + 4 0 R + ] +>> +endobj +% Page number 0. 3 0 obj << /Type /Page - /Parent 1 0 R + /Parent 2 0 R /Resources << - /ProcSets [/PDF /Text /ImageB /ImageC /ImageI] + /Font <> >> + /Contents [21 0 R] /MediaBox [0 0 612 792] - /Contents 5 0 R >> endobj -5 0 obj << - /Length 18 ->> stream -1 0 0 -1 29 763 cm -endstream +% Page number 1. +4 0 obj << + /Type /Page + /Parent 2 0 R + /Resources << + /Font <> + >> + /Contents [22 0 R] + /MediaBox [0 0 612 792] +>> endobj % Root of Dests NameTree 10 0 obj << @@ -42,8 +51,8 @@ endobj % Left child for Dests NameTree 11 0 obj << /Names [ - (First) [0 /XYZ 0 0 1] - (Next) <> + (First) [1 /XYZ 0 0 1] + (Next) <> ] >> endobj @@ -55,33 +64,72 @@ endobj ] >> endobj -% Old-style top-level Dests dictionary. +% Old-style top-level Dests dictionary. Note that FirstAlternate +% intentionally references non-exisstant page 11 and LastAlternate +% intentionally references non-existant object 999. 14 0 obj << - /FirstAlternate [10 /XYZ 200 400 800] - /LastAlternate <> + /FirstAlternate [11 /XYZ 200 400 800] + /LastAlternate <> +>> +endobj +% Font resource. +15 0 obj << + /Type /Font + /Subtype /Type1 + /BaseFont /Arial +>> +endobj +% Content for page 0. +21 0 obj << + /Length 0 +>> +stream +BT +/F1 20 Tf +100 600 TD (Page1)Tj +ET +endstream +endobj +% Content for page 1. +22 0 obj << + /Length 0 >> +stream +BT +/F1 20 Tf +100 600 TD (Page2)Tj +ET +endstream endobj xref -0 15 +0 23 0000000000 65536 f 0000000015 00000 n -0000000078 00000 n -0000000182 00000 n +0000000119 00000 n +0000000217 00000 n +0000000378 00000 n +0000000000 65536 f +0000000000 65536 f +0000000000 65536 f +0000000000 65536 f +0000000000 65536 f +0000000548 00000 n +0000000638 00000 n +0000000766 00000 n 0000000000 65536 f -0000000349 00000 n +0000001060 00000 n +0000001188 00000 n 0000000000 65536 f 0000000000 65536 f 0000000000 65536 f 0000000000 65536 f -0000000444 00000 n -0000000534 00000 n -0000000658 00000 n 0000000000 65536 f -0000000808 00000 n +0000001283 00000 n +0000001393 00000 n trailer << /Size 6 - /Root 2 0 R + /Root 1 0 R >> startxref -914 +1481 %%EOF -- cgit v1.2.3