summaryrefslogtreecommitdiff
path: root/testing/embedder_test.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-01-30 14:31:58 -0800
committerTom Sepez <tsepez@chromium.org>2015-01-30 14:31:58 -0800
commitb38a900497ab85c5badd5f1cd1f8c00d0c6f580d (patch)
treec4bb1612e8e40005c9befe1bbf966a8d8b4ace3f /testing/embedder_test.cpp
parent14b2bb0adcd723a463140929cbd9453a799a34e6 (diff)
downloadpdfium-b38a900497ab85c5badd5f1cd1f8c00d0c6f580d.tar.xz
Track formhandles in EmbedderTest class itself
This removes some duplicated code from each individual test. R=thestig@chromium.org Review URL: https://codereview.chromium.org/885403002
Diffstat (limited to 'testing/embedder_test.cpp')
-rw-r--r--testing/embedder_test.cpp48
1 files changed, 22 insertions, 26 deletions
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp
index 88cce00f5a..6cbfbf5191 100644
--- a/testing/embedder_test.cpp
+++ b/testing/embedder_test.cpp
@@ -190,7 +190,13 @@ void EmbedderTest::SetUp() {
}
void EmbedderTest::TearDown() {
- FPDF_CloseDocument(document_);
+ if (form_handle_) {
+ FORM_DoDocumentAAction(form_handle_, FPDFDOC_AACTION_WC);
+ FPDFDOC_ExitFormFillEnvironment(form_handle_);
+ }
+ if (document_) {
+ FPDF_CloseDocument(document_);
+ }
FPDFAvail_Destroy(avail_);
FPDF_DestroyLibrary();
if (loader_) {
@@ -229,10 +235,7 @@ bool EmbedderTest::OpenDocument(const std::string& filename) {
(void) FPDF_GetDocPermissions(document_);
(void) FPDFAvail_IsFormAvail(avail_, &hints_);
- return true;
-}
-FPDF_FORMHANDLE EmbedderTest::SetFormFillEnvironment() {
IPDF_JSPLATFORM platform_callbacks;
memset(&platform_callbacks, '\0', sizeof(platform_callbacks));
platform_callbacks.version = 1;
@@ -243,21 +246,16 @@ FPDF_FORMHANDLE EmbedderTest::SetFormFillEnvironment() {
form_callbacks.version = 1;
form_callbacks.m_pJsPlatform = &platform_callbacks;
- FPDF_FORMHANDLE form = FPDFDOC_InitFormFillEnvironment(document_,
- &form_callbacks);
- FPDF_SetFormFieldHighlightColor(form, 0, 0xFFE4DD);
- FPDF_SetFormFieldHighlightAlpha(form, 100);
- return form;
-}
+ form_handle_ = FPDFDOC_InitFormFillEnvironment(document_, &form_callbacks);
+ FPDF_SetFormFieldHighlightColor(form_handle_, 0, 0xFFE4DD);
+ FPDF_SetFormFieldHighlightAlpha(form_handle_, 100);
-void EmbedderTest::ClearFormFillEnvironment(FPDF_FORMHANDLE form) {
- FORM_DoDocumentAAction(form, FPDFDOC_AACTION_WC);
- FPDFDOC_ExitFormFillEnvironment(form);
+ return true;
}
-void EmbedderTest::DoOpenActions(FPDF_FORMHANDLE form) {
- FORM_DoDocumentJSAction(form);
- FORM_DoDocumentOpenAction(form);
+void EmbedderTest::DoOpenActions() {
+ FORM_DoDocumentJSAction(form_handle_);
+ FORM_DoDocumentOpenAction(form_handle_);
}
int EmbedderTest::GetFirstPageNum() {
@@ -274,31 +272,29 @@ int EmbedderTest::GetPageCount() {
return page_count;
}
-FPDF_PAGE EmbedderTest::LoadPage(int page_number,
- FPDF_FORMHANDLE form) {
+FPDF_PAGE EmbedderTest::LoadPage(int page_number) {
FPDF_PAGE page = FPDF_LoadPage(document_, page_number);
if (!page) {
return nullptr;
}
- FORM_OnAfterLoadPage(page, form);
- FORM_DoPageAAction(page, form, FPDFPAGE_AACTION_OPEN);
+ FORM_OnAfterLoadPage(page, form_handle_);
+ FORM_DoPageAAction(page, form_handle_, FPDFPAGE_AACTION_OPEN);
return page;
}
-FPDF_BITMAP EmbedderTest::RenderPage(FPDF_PAGE page,
- FPDF_FORMHANDLE form) {
+FPDF_BITMAP EmbedderTest::RenderPage(FPDF_PAGE page) {
int width = static_cast<int>(FPDF_GetPageWidth(page));
int height = static_cast<int>(FPDF_GetPageHeight(page));
FPDF_BITMAP bitmap = FPDFBitmap_Create(width, height, 0);
FPDFBitmap_FillRect(bitmap, 0, 0, width, height, 0xFFFFFFFF);
FPDF_RenderPageBitmap(bitmap, page, 0, 0, width, height, 0, 0);
- FPDF_FFLDraw(form, bitmap, page, 0, 0, width, height, 0, 0);
+ FPDF_FFLDraw(form_handle_, bitmap, page, 0, 0, width, height, 0, 0);
return bitmap;
}
-void EmbedderTest::UnloadPage(FPDF_PAGE page, FPDF_FORMHANDLE form) {
- FORM_DoPageAAction(page, form, FPDFPAGE_AACTION_CLOSE);
- FORM_OnBeforeClosePage(page, form);
+void EmbedderTest::UnloadPage(FPDF_PAGE page) {
+ FORM_DoPageAAction(page, form_handle_, FPDFPAGE_AACTION_CLOSE);
+ FORM_OnBeforeClosePage(page, form_handle_);
FPDF_ClosePage(page);
}