From b7c41498ac1f09debe0b12efe1312a22246a18b0 Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Tue, 8 May 2018 19:01:28 +0000 Subject: Add some basic tests for FPDF_VIEWERREF_GetPrintPageRange(). Hand edit viewer_ref.pdf to have a page range and more pages. Fix an invalid stream length in the file as well. Fix tests that depended on viewer_ref.pdf having only 1 page. Change-Id: I95d5cbf1f592d1c51f11d9ab5b26abf2f23ed598 Reviewed-on: https://pdfium-review.googlesource.com/32172 Reviewed-by: dsinclair Commit-Queue: Lei Zhang --- fpdfsdk/fpdf_ppo_embeddertest.cpp | 7 ++++++- fpdfsdk/fpdf_view_embeddertest.cpp | 6 ++++++ 2 files changed, 12 insertions(+), 1 deletion(-) (limited to 'fpdfsdk') diff --git a/fpdfsdk/fpdf_ppo_embeddertest.cpp b/fpdfsdk/fpdf_ppo_embeddertest.cpp index 8412771aaf..84e97dc96d 100644 --- a/fpdfsdk/fpdf_ppo_embeddertest.cpp +++ b/fpdfsdk/fpdf_ppo_embeddertest.cpp @@ -151,7 +151,7 @@ TEST_F(FPDFPPOEmbeddertest, BadCircularViewerPref) { } TEST_F(FPDFPPOEmbeddertest, BadRanges) { - EXPECT_TRUE(OpenDocument("viewer_ref.pdf")); + EXPECT_TRUE(OpenDocument("hello_world.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_TRUE(page); @@ -183,8 +183,13 @@ TEST_F(FPDFPPOEmbeddertest, GoodRanges) { EXPECT_TRUE(output_doc); EXPECT_TRUE(FPDF_CopyViewerPreferences(output_doc, document())); EXPECT_TRUE(FPDF_ImportPages(output_doc, document(), "1,1,1,1", 0)); + EXPECT_EQ(4, FPDF_GetPageCount(output_doc)); EXPECT_TRUE(FPDF_ImportPages(output_doc, document(), "1-1", 0)); EXPECT_EQ(5, FPDF_GetPageCount(output_doc)); + EXPECT_TRUE(FPDF_ImportPages(output_doc, document(), "5-5", 0)); + EXPECT_EQ(6, FPDF_GetPageCount(output_doc)); + EXPECT_TRUE(FPDF_ImportPages(output_doc, document(), "2-4", 0)); + EXPECT_EQ(9, FPDF_GetPageCount(output_doc)); FPDF_CloseDocument(output_doc); UnloadPage(page); diff --git a/fpdfsdk/fpdf_view_embeddertest.cpp b/fpdfsdk/fpdf_view_embeddertest.cpp index 40e1c9df5d..9ba406a41c 100644 --- a/fpdfsdk/fpdf_view_embeddertest.cpp +++ b/fpdfsdk/fpdf_view_embeddertest.cpp @@ -133,6 +133,9 @@ TEST_F(FPDFViewEmbeddertest, ViewerRefDummy) { char buf[100]; EXPECT_EQ(0U, FPDF_VIEWERREF_GetName(document(), "foo", nullptr, 0)); EXPECT_EQ(0U, FPDF_VIEWERREF_GetName(document(), "foo", buf, sizeof(buf))); + + FPDF_PAGERANGE page_range = FPDF_VIEWERREF_GetPrintPageRange(document()); + EXPECT_FALSE(page_range); } TEST_F(FPDFViewEmbeddertest, ViewerRef) { @@ -172,6 +175,9 @@ TEST_F(FPDFViewEmbeddertest, ViewerRef) { ASSERT_EQ(8U, FPDF_VIEWERREF_GetName(document(), "ViewArea", buf, sizeof(buf))); EXPECT_STREQ("CropBox", buf); + + FPDF_PAGERANGE page_range = FPDF_VIEWERREF_GetPrintPageRange(document()); + EXPECT_TRUE(page_range); } TEST_F(FPDFViewEmbeddertest, NamedDests) { -- cgit v1.2.3