OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ppapi/tests/test_pdf.h" | 5 #include "ppapi/tests/test_pdf.h" |
6 | 6 |
7 #include "ppapi/c/private/ppb_pdf.h" | 7 #include "ppapi/c/private/ppb_pdf.h" |
8 #include "ppapi/cpp/image_data.h" | 8 #include "ppapi/cpp/image_data.h" |
9 #include "ppapi/cpp/point.h" | 9 #include "ppapi/cpp/point.h" |
10 #include "ppapi/cpp/private/pdf.h" | 10 #include "ppapi/cpp/private/pdf.h" |
11 #include "ppapi/cpp/var.h" | 11 #include "ppapi/cpp/var.h" |
12 #include "ppapi/tests/testing_instance.h" | 12 #include "ppapi/tests/testing_instance.h" |
13 | 13 |
| 14 #ifdef V8_USE_EXTERNAL_STARTUP_DATA |
| 15 #include "gin/public/isolate_holder.h" |
| 16 #endif |
| 17 |
14 REGISTER_TEST_CASE(PDF); | 18 REGISTER_TEST_CASE(PDF); |
15 | 19 |
16 TestPDF::TestPDF(TestingInstance* instance) | 20 TestPDF::TestPDF(TestingInstance* instance) |
17 : TestCase(instance) { | 21 : TestCase(instance) { |
18 } | 22 } |
19 | 23 |
20 void TestPDF::RunTests(const std::string& filter) { | 24 void TestPDF::RunTests(const std::string& filter) { |
21 RUN_TEST(GetLocalizedString, filter); | 25 RUN_TEST(GetLocalizedString, filter); |
22 RUN_TEST(GetResourceImage, filter); | 26 RUN_TEST(GetResourceImage, filter); |
| 27 RUN_TEST(GetV8ExternalSnapshotData, filter); |
23 } | 28 } |
24 | 29 |
25 std::string TestPDF::TestGetLocalizedString() { | 30 std::string TestPDF::TestGetLocalizedString() { |
26 pp::Var string = pp::PDF::GetLocalizedString(instance_, | 31 pp::Var string = pp::PDF::GetLocalizedString(instance_, |
27 PP_RESOURCESTRING_PDFGETPASSWORD); | 32 PP_RESOURCESTRING_PDFGETPASSWORD); |
28 ASSERT_TRUE(string.is_string()); | 33 ASSERT_TRUE(string.is_string()); |
29 ASSERT_EQ("This document is password protected. Please enter a password.", | 34 ASSERT_EQ("This document is password protected. Please enter a password.", |
30 string.AsString()); | 35 string.AsString()); |
31 PASS(); | 36 PASS(); |
32 } | 37 } |
33 | 38 |
34 std::string TestPDF::TestGetResourceImage() { | 39 std::string TestPDF::TestGetResourceImage() { |
35 pp::ImageData data = | 40 pp::ImageData data = |
36 pp::PDF::GetResourceImage(instance_, PP_RESOURCEIMAGE_PDF_BUTTON_ZOOMIN); | 41 pp::PDF::GetResourceImage(instance_, PP_RESOURCEIMAGE_PDF_BUTTON_ZOOMIN); |
37 ASSERT_EQ(43, data.size().width()); | 42 ASSERT_EQ(43, data.size().width()); |
38 ASSERT_EQ(42, data.size().height()); | 43 ASSERT_EQ(42, data.size().height()); |
39 for (int i = 0; i < data.size().width(); ++i) { | 44 for (int i = 0; i < data.size().width(); ++i) { |
40 for (int j = 0; j < data.size().height(); ++j) { | 45 for (int j = 0; j < data.size().height(); ++j) { |
41 pp::Point point(i, j); | 46 pp::Point point(i, j); |
42 ASSERT_NE(0, *data.GetAddr32(point)); | 47 ASSERT_NE(0, *data.GetAddr32(point)); |
43 } | 48 } |
44 } | 49 } |
45 PASS(); | 50 PASS(); |
46 } | 51 } |
| 52 |
| 53 std::string TestPDF::TestGetV8ExternalSnapshotData() { |
| 54 const char* natives_data; |
| 55 const char* snapshot_data; |
| 56 int natives_size; |
| 57 int snapshot_size; |
| 58 #ifdef V8_USE_EXTERNAL_STARTUP_DATA |
| 59 bool loaded_ok = gin::IsolateHolder::LoadV8Snapshot(); |
| 60 ASSERT_TRUE(loaded_ok); |
| 61 pp::PDF::GetV8ExternalSnapshotData(instance_, &natives_data, &natives_size, |
| 62 &snapshot_data, &snapshot_size); |
| 63 ASSERT_NE(natives_data, (char*) (NULL)); |
| 64 ASSERT_NE(natives_size, 0); |
| 65 ASSERT_NE(snapshot_data, (char*) (NULL)); |
| 66 ASSERT_NE(snapshot_size, 0); |
| 67 #else |
| 68 pp::PDF::GetV8ExternalSnapshotData(instance_, &natives_data, &natives_size, |
| 69 &snapshot_data, &snapshot_size); |
| 70 ASSERT_EQ(natives_data, (char*) (NULL)); |
| 71 ASSERT_EQ(natives_size, 0); |
| 72 ASSERT_EQ(snapshot_data, (char*) (NULL)); |
| 73 ASSERT_EQ(snapshot_size, 0); |
| 74 #endif |
| 75 PASS(); |
| 76 } |
OLD | NEW |