1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "ppapi/tests/test_pdf.h" 6 7 #include "ppapi/c/private/ppb_pdf.h" 8 #include "ppapi/cpp/image_data.h" 9 #include "ppapi/cpp/point.h" 10 #include "ppapi/cpp/private/pdf.h" 11 #include "ppapi/cpp/var.h" 12 #include "ppapi/tests/testing_instance.h" 13 14 REGISTER_TEST_CASE(PDF); 15 16 TestPDF::TestPDF(TestingInstance* instance) 17 : TestCase(instance) { 18 } 19 20 void TestPDF::RunTests(const std::string& filter) { 21 RUN_TEST(GetLocalizedString, filter); 22 RUN_TEST(GetResourceImage, filter); 23 } 24 25 std::string TestPDF::TestGetLocalizedString() { 26 pp::Var string = pp::PDF::GetLocalizedString(instance_, 27 PP_RESOURCESTRING_PDFGETPASSWORD); 28 ASSERT_TRUE(string.is_string()); 29 ASSERT_EQ("This document is password protected. Please enter a password.", 30 string.AsString()); 31 PASS(); 32 } 33 34 std::string TestPDF::TestGetResourceImage() { 35 pp::ImageData data = 36 pp::PDF::GetResourceImage(instance_, PP_RESOURCEIMAGE_PDF_BUTTON_ZOOMIN); 37 ASSERT_EQ(43, data.size().width()); 38 ASSERT_EQ(42, data.size().height()); 39 for (int i = 0; i < data.size().width(); ++i) { 40 for (int j = 0; j < data.size().height(); ++j) { 41 pp::Point point(i, j); 42 ASSERT_NE(*data.GetAddr32(point), 0); 43 } 44 } 45 PASS(); 46 } 47