diff options
Diffstat (limited to 'testing')
-rw-r--r-- | testing/embedder_test.cpp | 15 | ||||
-rw-r--r-- | testing/embedder_test.h | 6 |
2 files changed, 19 insertions, 2 deletions
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp index 8d4682eacf..7224e227c6 100644 --- a/testing/embedder_test.cpp +++ b/testing/embedder_test.cpp @@ -102,6 +102,15 @@ void EmbedderTest::TearDown() { free(file_contents_); } +bool EmbedderTest::CreateEmptyDocument() { + document_ = FPDF_CreateNewDocument(); + if (!document_) + return false; + + SetupFormFillEnvironment(); + return true; +} + bool EmbedderTest::OpenDocument(const std::string& filename, bool must_linearize) { std::string file_path; @@ -169,7 +178,11 @@ bool EmbedderTest::OpenDocument(const std::string& filename, #endif // PDF_ENABLE_XFA (void)FPDF_GetDocPermissions(document_); + SetupFormFillEnvironment(); + return true; +} +void EmbedderTest::SetupFormFillEnvironment() { IPDF_JSPLATFORM* platform = static_cast<IPDF_JSPLATFORM*>(this); memset(platform, 0, sizeof(IPDF_JSPLATFORM)); platform->version = 2; @@ -190,8 +203,6 @@ bool EmbedderTest::OpenDocument(const std::string& filename, form_handle_ = FPDFDOC_InitFormFillEnvironment(document_, formfillinfo); FPDF_SetFormFieldHighlightColor(form_handle_, 0, 0xFFE4DD); FPDF_SetFormFieldHighlightAlpha(form_handle_, 100); - - return true; } void EmbedderTest::DoOpenActions() { diff --git a/testing/embedder_test.h b/testing/embedder_test.h index a544f26543..c780cca74b 100644 --- a/testing/embedder_test.h +++ b/testing/embedder_test.h @@ -78,6 +78,10 @@ class EmbedderTest : public ::testing::Test, FPDF_DOCUMENT document() { return document_; } FPDF_FORMHANDLE form_handle() { return form_handle_; } + // Create an empty document, and its form fill environment. Returns true + // on success or false on failure. + virtual bool CreateEmptyDocument(); + // Open the document specified by |filename|, and create its form fill // environment, or return false on failure. // The filename is relative to the test data directory where we store all the @@ -107,6 +111,8 @@ class EmbedderTest : public ::testing::Test, virtual void UnloadPage(FPDF_PAGE page); protected: + void SetupFormFillEnvironment(); + Delegate* delegate_; std::unique_ptr<Delegate> default_delegate_; FPDF_DOCUMENT document_; |