Consolidate the repetitive hash values used for embedder tests.
PDFium embedder tests often reuse the same testing PDFs, therefore a
lot of the rendering results' hash values are referenced repetitively.
This CL performs the following clean ups:
- Add files embedder_test_constants.cpp and embedder_test_constants.h
in testing/ directory to hold hash values which are referenced
across multiple embedder test files.
- Consolidate repetitive hash values, which are only referenced in one
file, into that file's unnamed namespaces.
Bug: pdfium:1500
Change-Id: I803df232236c7cb3f7e27f30f8fdaf36f1aa4db5
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/69171
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Hui Yingst <nigi@chromium.org>
diff --git a/core/fpdfapi/parser/cpdf_security_handler_embeddertest.cpp b/core/fpdfapi/parser/cpdf_security_handler_embeddertest.cpp
index a957b9e..7389278 100644
--- a/core/fpdfapi/parser/cpdf_security_handler_embeddertest.cpp
+++ b/core/fpdfapi/parser/cpdf_security_handler_embeddertest.cpp
@@ -15,6 +15,7 @@
#include "public/fpdf_save.h"
#include "public/fpdfview.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
@@ -92,31 +93,16 @@
void VerifyHelloWorldPage(FPDF_PAGE page) {
ASSERT_TRUE(page);
-#if defined(OS_WIN)
- const char kExpectedHash[] = "795b7ce1626931aa06af0fa23b7d80bb";
-#elif defined(OS_MACOSX)
- const char kExpectedHash[] = "c38b75e16a13852aee3b97d77a0f0ee7";
-#else
- const char kExpectedHash[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
-#endif
-
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kExpectedHash);
+ CompareBitmap(page_bitmap.get(), 200, 200, pdfium::kHelloWorldChecksum);
}
void VerifyModifiedHelloWorldPage(FPDF_PAGE page) {
ASSERT_TRUE(page);
-#if defined(OS_WIN)
- const char kExpectedHash[] = "93db13099042bafefb3c22a165bad684";
-#elif defined(OS_MACOSX)
- const char kExpectedHash[] = "572b1022bb3e8f43dc671162fc62cf7f";
-#else
- const char kExpectedHash[] = "93dcc09055f87a2792c8e3065af99a1b";
-#endif
-
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kExpectedHash);
+ CompareBitmap(page_bitmap.get(), 200, 200,
+ pdfium::kHelloWorldRemovedChecksum);
}
};
diff --git a/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp b/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
index fb8ad5f..a538b24 100644
--- a/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
+++ b/core/fpdfapi/parser/fpdf_parser_decode_embeddertest.cpp
@@ -11,10 +11,12 @@
#include "core/fxcrt/fx_memory_wrappers.h"
#include "public/cpp/fpdf_scopers.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/test_support.h"
using FPDFParserDecodeEmbedderTest = EmbedderTest;
+using pdfium::kBlankPage612By792Checksum;
TEST_F(FPDFParserDecodeEmbedderTest, Bug_552046) {
// Tests specifying multiple image filters for a stream. Should not cause a
@@ -23,7 +25,7 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), 612, 792, "1940568c9ba33bac5d0b1ee9558c76b3");
+ CompareBitmap(bitmap.get(), 612, 792, kBlankPage612By792Checksum);
UnloadPage(page);
}
@@ -34,7 +36,7 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), 612, 792, "1940568c9ba33bac5d0b1ee9558c76b3");
+ CompareBitmap(bitmap.get(), 612, 792, kBlankPage612By792Checksum);
UnloadPage(page);
}
@@ -51,13 +53,7 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
-#if defined(OS_MACOSX)
- const char kExpectedMd5sum[] = "c38b75e16a13852aee3b97d77a0f0ee7";
-#elif defined(OS_WIN)
- const char kExpectedMd5sum[] = "795b7ce1626931aa06af0fa23b7d80bb";
-#else
- const char kExpectedMd5sum[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
-#endif
- CompareBitmap(bitmap.get(), 200, 200, kExpectedMd5sum);
+
+ CompareBitmap(bitmap.get(), 200, 200, pdfium::kHelloWorldChecksum);
UnloadPage(page);
}
diff --git a/core/fpdfapi/render/fpdf_render_pattern_embeddertest.cpp b/core/fpdfapi/render/fpdf_render_pattern_embeddertest.cpp
index 6de721c..b61ceb8 100644
--- a/core/fpdfapi/render/fpdf_render_pattern_embeddertest.cpp
+++ b/core/fpdfapi/render/fpdf_render_pattern_embeddertest.cpp
@@ -6,6 +6,7 @@
#include "public/cpp/fpdf_scopers.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
class FPDFRenderPatternEmbedderTest : public EmbedderTest {};
@@ -16,6 +17,6 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), 612, 792, "1940568c9ba33bac5d0b1ee9558c76b3");
+ CompareBitmap(bitmap.get(), 612, 792, pdfium::kBlankPage612By792Checksum);
UnloadPage(page);
}
diff --git a/fpdfsdk/fpdf_annot_embeddertest.cpp b/fpdfsdk/fpdf_annot_embeddertest.cpp
index 53f0741..7acd606 100644
--- a/fpdfsdk/fpdf_annot_embeddertest.cpp
+++ b/fpdfsdk/fpdf_annot_embeddertest.cpp
@@ -18,6 +18,7 @@
#include "public/fpdf_formfill.h"
#include "public/fpdfview.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/fx_string_testhelpers.h"
#include "testing/gmock/include/gmock/gmock-matchers.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -27,6 +28,17 @@
namespace {
+#if defined(OS_WIN)
+const char kAnnotationStampWithApChecksum[] =
+ "6aa001a77ec05d0f1b0d1d22e28744d4";
+#elif defined(OS_MACOSX)
+const char kAnnotationStampWithApChecksum[] =
+ "80d7b6cc7b13a78d77a6151bc846e80b";
+#else
+const char kAnnotationStampWithApChecksum[] =
+ "b42cef463483e668eaf4055a65e4f1f5";
+#endif
+
void VerifyFocusableAnnotSubtypes(
FPDF_FORMHANDLE form_handle,
pdfium::span<const FPDF_ANNOTATION_SUBTYPE> expected_subtypes) {
@@ -769,17 +781,14 @@
#endif
TEST_F(FPDFAnnotEmbedderTest, MAYBE_AddAndModifyPath) {
#if defined(OS_MACOSX)
- static const char kMd5Original[] = "80d7b6cc7b13a78d77a6151bc846e80b";
static const char kMd5ModifiedPath[] = "8cfae6d547fc5d6702f5f1ac631beb5e";
static const char kMd5TwoPaths[] = "9677e4892bb02950d3e4dbe74470578f";
static const char kMd5NewAnnot[] = "e8ebddac4db8c0a4b556ddf79aa1a26d";
#elif defined(OS_WIN)
- static const char kMd5Original[] = "6aa001a77ec05d0f1b0d1d22e28744d4";
static const char kMd5ModifiedPath[] = "a7a8d675a6ddbcbdfecee65a33ba19e1";
static const char kMd5TwoPaths[] = "7c0bdd4552329704c47a7cce47edbbd6";
static const char kMd5NewAnnot[] = "3c48d492b4f62941fed0fb62f729f31e";
#else
- static const char kMd5Original[] = "b42cef463483e668eaf4055a65e4f1f5";
static const char kMd5ModifiedPath[] = "6ff77d6d1fec4ea571fabe0c7a19b517";
static const char kMd5TwoPaths[] = "ca37ad549e74ac5b359a055708f3e7b6";
static const char kMd5NewAnnot[] = "0d7a0e33fbf41ff7fa5d732ab2c5edff";
@@ -794,7 +803,7 @@
// Check that the page renders correctly.
{
ScopedFPDFBitmap bitmap = RenderLoadedPageWithFlags(page, FPDF_ANNOT);
- CompareBitmap(bitmap.get(), 595, 842, kMd5Original);
+ CompareBitmap(bitmap.get(), 595, 842, kAnnotationStampWithApChecksum);
}
{
@@ -947,7 +956,7 @@
// Check that the page renders correctly without rendering the annotation.
{
ScopedFPDFBitmap bitmap = RenderLoadedPageWithFlags(page, FPDF_ANNOT);
- CompareBitmap(bitmap.get(), 612, 792, "1940568c9ba33bac5d0b1ee9558c76b3");
+ CompareBitmap(bitmap.get(), 612, 792, pdfium::kBlankPage612By792Checksum);
}
// Unset the HIDDEN flag.
@@ -977,15 +986,12 @@
#endif
TEST_F(FPDFAnnotEmbedderTest, MAYBE_AddAndModifyImage) {
#if defined(OS_MACOSX)
- static const char kMd5Original[] = "80d7b6cc7b13a78d77a6151bc846e80b";
static const char kMd5NewImage[] = "dd18709d90c245a12ce0b8c4d092bea9";
static const char kMd5ModifiedImage[] = "8d6f478ff8c7e67d49b253f1af587a99";
#elif defined(OS_WIN)
- static const char kMd5Original[] = "6aa001a77ec05d0f1b0d1d22e28744d4";
static const char kMd5NewImage[] = "3d77d06a971bcb9fb54db082f1082c8b";
static const char kMd5ModifiedImage[] = "dc4f4afc26c345418330d31c065020e1";
#else
- static const char kMd5Original[] = "b42cef463483e668eaf4055a65e4f1f5";
static const char kMd5NewImage[] = "528e6243dc29d54f36b61e0d3287d935";
static const char kMd5ModifiedImage[] = "6d9e59f3e57a1ff82fb258356b7eb731";
#endif
@@ -999,7 +1005,7 @@
// Check that the page renders correctly.
{
ScopedFPDFBitmap bitmap = RenderLoadedPageWithFlags(page, FPDF_ANNOT);
- CompareBitmap(bitmap.get(), 595, 842, kMd5Original);
+ CompareBitmap(bitmap.get(), 595, 842, kAnnotationStampWithApChecksum);
}
constexpr int kBitmapSize = 200;
@@ -1068,15 +1074,12 @@
#endif
TEST_F(FPDFAnnotEmbedderTest, MAYBE_AddAndModifyText) {
#if defined(OS_MACOSX)
- static const char kMd5Original[] = "80d7b6cc7b13a78d77a6151bc846e80b";
static const char kMd5NewText[] = "e657266260b88c964938efe6c9b292da";
static const char kMd5ModifiedText[] = "7accdf2bac64463101783221f53d3188";
#elif defined(OS_WIN)
- static const char kMd5Original[] = "6aa001a77ec05d0f1b0d1d22e28744d4";
static const char kMd5NewText[] = "204cc01749a70b8afc246a4ca33c7eb6";
static const char kMd5ModifiedText[] = "641261a45e8dfd68c89b80bfd237660d";
#else
- static const char kMd5Original[] = "b42cef463483e668eaf4055a65e4f1f5";
static const char kMd5NewText[] = "00197ad6206f763febad5719e5935306";
static const char kMd5ModifiedText[] = "85853bc0aaa5a4e3af04e58b9cbfff23";
#endif
@@ -1090,7 +1093,7 @@
// Check that the page renders correctly.
{
ScopedFPDFBitmap bitmap = RenderLoadedPageWithFlags(page, FPDF_ANNOT);
- CompareBitmap(bitmap.get(), 595, 842, kMd5Original);
+ CompareBitmap(bitmap.get(), 595, 842, kAnnotationStampWithApChecksum);
}
{
@@ -1146,7 +1149,7 @@
EXPECT_TRUE(FPDFPage_RemoveAnnot(page, 2));
{
ScopedFPDFBitmap bitmap = RenderLoadedPageWithFlags(page, FPDF_ANNOT);
- CompareBitmap(bitmap.get(), 595, 842, kMd5Original);
+ CompareBitmap(bitmap.get(), 595, 842, kAnnotationStampWithApChecksum);
}
UnloadPage(page);
diff --git a/fpdfsdk/fpdf_edit_embeddertest.cpp b/fpdfsdk/fpdf_edit_embeddertest.cpp
index b60898b..635f0e9 100644
--- a/fpdfsdk/fpdf_edit_embeddertest.cpp
+++ b/fpdfsdk/fpdf_edit_embeddertest.cpp
@@ -25,11 +25,28 @@
#include "public/fpdf_edit.h"
#include "public/fpdfview.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/fx_string_testhelpers.h"
#include "testing/gmock/include/gmock/gmock-matchers.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/utils/hash.h"
+using pdfium::kHelloWorldChecksum;
+
+namespace {
+
+const char kRedRectangleChecksum[] = "66d02eaa6181e2c069ce2ea99beda497";
+
+#if defined(OS_WIN)
+const char kFirstRemovedChecksum[] = "aae6c5334721f90ec30d3d59f4ef7deb";
+#elif defined(OS_MACOSX)
+const char kFirstRemovedChecksum[] = "17ca3778fd8bb395b46532f1fa17f702";
+#else
+const char kFirstRemovedChecksum[] = "b76df015fe88009c3c342395df96abf1";
+#endif
+
+} // namespace
+
class FPDFEditEmbedderTest : public EmbedderTest {
protected:
FPDF_DOCUMENT CreateNewDocument() {
@@ -284,8 +301,7 @@
FPDFPage_InsertObject(page, red_rect);
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 612, 792,
- "66d02eaa6181e2c069ce2ea99beda497");
+ CompareBitmap(page_bitmap.get(), 612, 792, kRedRectangleChecksum);
}
// Now add to that a green rectangle with some medium alpha
@@ -619,15 +635,8 @@
// Show what the original file looks like.
{
-#if defined(OS_MACOSX)
- const char kOriginalMD5[] = "c38b75e16a13852aee3b97d77a0f0ee7";
-#elif defined(OS_WIN)
- const char kOriginalMD5[] = "795b7ce1626931aa06af0fa23b7d80bb";
-#else
- const char kOriginalMD5[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
-#endif
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
// Get the "Hello, world!" text object and remove it.
@@ -638,15 +647,8 @@
// Verify the "Hello, world!" text is gone.
{
-#if defined(OS_MACOSX)
- const char kRemovedMD5[] = "17ca3778fd8bb395b46532f1fa17f702";
-#elif defined(OS_WIN)
- const char kRemovedMD5[] = "aae6c5334721f90ec30d3d59f4ef7deb";
-#else
- const char kRemovedMD5[] = "b76df015fe88009c3c342395df96abf1";
-#endif
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kFirstRemovedChecksum);
}
ASSERT_EQ(1, FPDFPage_CountObjects(page));
@@ -1167,16 +1169,9 @@
// Verify the "Greetings, world!" text is gone.
ASSERT_EQ(2, FPDFPage_CountObjects(page));
-#if defined(OS_MACOSX)
- const char kGreetingsRemovedMD5[] = "c38b75e16a13852aee3b97d77a0f0ee7";
-#elif defined(OS_WIN)
- const char kGreetingsRemovedMD5[] = "795b7ce1626931aa06af0fa23b7d80bb";
-#else
- const char kGreetingsRemovedMD5[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
-#endif
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kGreetingsRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
// Save the file
@@ -1192,7 +1187,7 @@
EXPECT_EQ(2, FPDFPage_CountObjects(saved_page));
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 200, kGreetingsRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
CloseSavedPage(saved_page);
@@ -1427,16 +1422,9 @@
cpdf_page_object = CPDFPageObjectFromFPDFPageObject(page_object);
ASSERT_EQ(0, cpdf_page_object->GetContentStream());
-#if defined(OS_MACOSX)
- const char kFirstRemovedMD5[] = "17ca3778fd8bb395b46532f1fa17f702";
-#elif defined(OS_WIN)
- const char kFirstRemovedMD5[] = "aae6c5334721f90ec30d3d59f4ef7deb";
-#else
- const char kFirstRemovedMD5[] = "b76df015fe88009c3c342395df96abf1";
-#endif
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kFirstRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kFirstRemovedChecksum);
}
// Save the file
@@ -1454,7 +1442,7 @@
ASSERT_EQ(0, cpdf_page_object->GetContentStream());
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 200, kFirstRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kFirstRemovedChecksum);
}
CloseSavedPage(saved_page);
@@ -1501,16 +1489,10 @@
cpdf_page_object = CPDFPageObjectFromFPDFPageObject(page_object);
ASSERT_EQ(0, cpdf_page_object->GetContentStream());
-#if defined(OS_MACOSX)
- const char kLastRemovedMD5[] = "572b1022bb3e8f43dc671162fc62cf7f";
-#elif defined(OS_WIN)
- const char kLastRemovedMD5[] = "93db13099042bafefb3c22a165bad684";
-#else
- const char kLastRemovedMD5[] = "93dcc09055f87a2792c8e3065af99a1b";
-#endif
+ using pdfium::kHelloWorldRemovedChecksum;
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kLastRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldRemovedChecksum);
}
// Save the file
@@ -1528,7 +1510,7 @@
ASSERT_EQ(0, cpdf_page_object->GetContentStream());
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 200, kLastRemovedMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldRemovedChecksum);
}
CloseSavedPage(saved_page);
@@ -1662,10 +1644,11 @@
EXPECT_TRUE(OpenDocument("many_rectangles.pdf"));
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
- const char kOriginalMD5[] = "b0170c575b65ecb93ebafada0ff0f038";
+
+ using pdfium::kManyRectanglesChecksum;
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 300, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 300, kManyRectanglesChecksum);
}
// Add a black rectangle.
@@ -1704,7 +1687,7 @@
FPDFPageObj_Destroy(added_object);
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 300, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 300, kManyRectanglesChecksum);
}
EXPECT_EQ(kOriginalObjectCount, FPDFPage_CountObjects(saved_page));
@@ -1722,7 +1705,7 @@
EXPECT_EQ(kOriginalObjectCount, FPDFPage_CountObjects(saved_page));
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 300, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 300, kManyRectanglesChecksum);
}
CloseSavedPage(saved_page);
@@ -1735,10 +1718,10 @@
ASSERT_TRUE(page);
// Render the blank page and verify it's a blank bitmap.
- const char kBlankMD5[] = "1940568c9ba33bac5d0b1ee9558c76b3";
+ using pdfium::kBlankPage612By792Checksum;
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 612, 792, kBlankMD5);
+ CompareBitmap(page_bitmap.get(), 612, 792, kBlankPage612By792Checksum);
}
ASSERT_EQ(0, FPDFPage_CountObjects(page));
@@ -1748,10 +1731,9 @@
EXPECT_TRUE(FPDFPageObj_SetFillColor(red_rect, 255, 0, 0, 255));
EXPECT_TRUE(FPDFPath_SetDrawMode(red_rect, FPDF_FILLMODE_ALTERNATE, 0));
FPDFPage_InsertObject(page, red_rect);
- const char kRedRectangleMD5[] = "66d02eaa6181e2c069ce2ea99beda497";
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 612, 792, kRedRectangleMD5);
+ CompareBitmap(page_bitmap.get(), 612, 792, kRedRectangleChecksum);
}
EXPECT_EQ(1, FPDFPage_CountObjects(page));
@@ -1760,7 +1742,7 @@
EXPECT_TRUE(FPDFPage_RemoveObject(page, red_rect));
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 612, 792, kBlankMD5);
+ CompareBitmap(page_bitmap.get(), 612, 792, kBlankPage612By792Checksum);
}
EXPECT_EQ(0, FPDFPage_CountObjects(page));
@@ -2825,13 +2807,6 @@
#define MAYBE_AddMarkCompressedStream AddMarkCompressedStream
#endif
TEST_F(FPDFEditEmbedderTest, MAYBE_AddMarkCompressedStream) {
-#if defined(OS_MACOSX)
- const char kOriginalMD5[] = "c38b75e16a13852aee3b97d77a0f0ee7";
-#elif defined(OS_WIN)
- const char kOriginalMD5[] = "795b7ce1626931aa06af0fa23b7d80bb";
-#else
- const char kOriginalMD5[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
-#endif
// Load document with some text in a compressed stream.
EXPECT_TRUE(OpenDocument("hello_world_compressed_stream.pdf"));
@@ -2841,7 +2816,7 @@
// Render and check there are no marks.
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
CheckMarkCounts(page, 0, 2, 0, 0, 0, 0);
@@ -2855,7 +2830,7 @@
// Render and check there is 1 mark.
{
ScopedFPDFBitmap page_bitmap = RenderPage(page);
- CompareBitmap(page_bitmap.get(), 200, 200, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
CheckMarkCounts(page, 0, 2, 0, 0, 0, 1);
@@ -2870,7 +2845,7 @@
{
ScopedFPDFBitmap page_bitmap = RenderPage(saved_page);
- CompareBitmap(page_bitmap.get(), 200, 200, kOriginalMD5);
+ CompareBitmap(page_bitmap.get(), 200, 200, kHelloWorldChecksum);
}
CheckMarkCounts(saved_page, 0, 2, 0, 0, 0, 1);
diff --git a/fpdfsdk/fpdf_editpage_embeddertest.cpp b/fpdfsdk/fpdf_editpage_embeddertest.cpp
index 739e5b4..084d57c 100644
--- a/fpdfsdk/fpdf_editpage_embeddertest.cpp
+++ b/fpdfsdk/fpdf_editpage_embeddertest.cpp
@@ -5,15 +5,14 @@
#include "core/fxcrt/fx_system.h"
#include "public/fpdf_edit.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
class FPDFEditPageEmbedderTest : public EmbedderTest {};
TEST_F(FPDFEditPageEmbedderTest, Rotation) {
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
- const char kOriginalMD5[] = "b4e411a6b5ffa59a50efede2efece597";
const char kRotatedMD5[] = "eded83f75f3d0332c584c416c571c0df";
#else
- const char kOriginalMD5[] = "0a90de37f52127619c3dfb642b5fa2fe";
const char kRotatedMD5[] = "d599429574ff0dcad3bc898ea8b874ca";
#endif
@@ -30,7 +29,8 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height,
+ pdfium::kRectanglesChecksum);
}
FPDFPage_SetRotation(page, 1);
diff --git a/fpdfsdk/fpdf_formfill_embeddertest.cpp b/fpdfsdk/fpdf_formfill_embeddertest.cpp
index 5a589c6..835ded1 100644
--- a/fpdfsdk/fpdf_formfill_embeddertest.cpp
+++ b/fpdfsdk/fpdf_formfill_embeddertest.cpp
@@ -16,6 +16,7 @@
#include "public/fpdf_fwlevent.h"
#include "public/fpdf_progressive.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/embedder_test_mock_delegate.h"
#include "testing/embedder_test_timer_handling_delegate.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -28,6 +29,22 @@
using FPDFFormFillEmbedderTest = EmbedderTest;
+namespace {
+
+#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
+const char kTextFormChecksum[] = "17efe329169f5b7681fbe939894a35de";
+#else
+#if defined(OS_WIN)
+const char kTextFormChecksum[] = "d3204faa62b607f0bd3893c9c22cabcb";
+#elif defined(OS_MACOSX)
+const char kTextFormChecksum[] = "d485541d958fef08d24e8eca3e537023";
+#else
+const char kTextFormChecksum[] = "b890950d4b9bc163b1a96797f3004b53";
+#endif
+#endif // defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
+
+} // namespace
+
// A base class for many related tests that involve clicking and typing into
// form fields.
class FPDFFormFillInteractiveEmbedderTest : public FPDFFormFillEmbedderTest {
@@ -1241,22 +1258,26 @@
TEST_F(FPDFFormFillEmbedderTest, FormText) {
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
- const char md5_1[] = "17efe329169f5b7681fbe939894a35de";
- const char md5_2[] = "42af2135e20deb09cbdbfb6418d86382";
- const char md5_3[] = "4a961599a512a08468b26b89d389c30a";
+ const char kFocusedTextFormWithAbcChecksum[] =
+ "42af2135e20deb09cbdbfb6418d86382";
+ const char kUnfocusedTextFormWithAbcChecksum[] =
+ "4a961599a512a08468b26b89d389c30a";
#else
#if defined(OS_MACOSX)
- const char md5_1[] = "d485541d958fef08d24e8eca3e537023";
- const char md5_2[] = "c6e4a2fb10661116771ee74f54d9c5e0";
- const char md5_3[] = "e0c8d5099301d7c10ed831a43e974d9d";
+ const char kFocusedTextFormWithAbcChecksum[] =
+ "c6e4a2fb10661116771ee74f54d9c5e0";
+ const char kUnfocusedTextFormWithAbcChecksum[] =
+ "e0c8d5099301d7c10ed831a43e974d9d";
#elif defined(OS_WIN)
- const char md5_1[] = "d3204faa62b607f0bd3893c9c22cabcb";
- const char md5_2[] = "29d1c3fd226ca6a69597f75937690320";
- const char md5_3[] = "5e678a55912cb568fd677bf34abb8727";
+ const char kFocusedTextFormWithAbcChecksum[] =
+ "29d1c3fd226ca6a69597f75937690320";
+ const char kUnfocusedTextFormWithAbcChecksum[] =
+ "5e678a55912cb568fd677bf34abb8727";
#else
- const char md5_1[] = "b890950d4b9bc163b1a96797f3004b53";
- const char md5_2[] = "11487d5597599a26e8912b9c1d9422cb";
- const char md5_3[] = "bffe0ecea9a533f217047ee41d6be466";
+ const char kFocusedTextFormWithAbcChecksum[] =
+ "11487d5597599a26e8912b9c1d9422cb";
+ const char kUnfocusedTextFormWithAbcChecksum[] =
+ "bffe0ecea9a533f217047ee41d6be466";
#endif
#endif // defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
{
@@ -1264,7 +1285,7 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap1 = RenderLoadedPage(page);
- CompareBitmap(bitmap1.get(), 300, 300, md5_1);
+ CompareBitmap(bitmap1.get(), 300, 300, kTextFormChecksum);
// Click on the textfield
EXPECT_EQ(FPDF_FORMFIELD_TEXTFIELD,
@@ -1280,21 +1301,21 @@
FORM_OnChar(form_handle(), page, 66, 0);
FORM_OnChar(form_handle(), page, 67, 0);
ScopedFPDFBitmap bitmap2 = RenderLoadedPage(page);
- CompareBitmap(bitmap2.get(), 300, 300, md5_2);
+ CompareBitmap(bitmap2.get(), 300, 300, kFocusedTextFormWithAbcChecksum);
// Focus remains despite right clicking out of the textfield
FORM_OnMouseMove(form_handle(), page, 0, 15.0, 15.0);
FORM_OnRButtonDown(form_handle(), page, 0, 15.0, 15.0);
FORM_OnRButtonUp(form_handle(), page, 0, 15.0, 15.0);
ScopedFPDFBitmap bitmap3 = RenderLoadedPage(page);
- CompareBitmap(bitmap3.get(), 300, 300, md5_2);
+ CompareBitmap(bitmap3.get(), 300, 300, kFocusedTextFormWithAbcChecksum);
// Take out focus by clicking out of the textfield
FORM_OnMouseMove(form_handle(), page, 0, 15.0, 15.0);
FORM_OnLButtonDown(form_handle(), page, 0, 15.0, 15.0);
FORM_OnLButtonUp(form_handle(), page, 0, 15.0, 15.0);
ScopedFPDFBitmap bitmap4 = RenderLoadedPage(page);
- CompareBitmap(bitmap4.get(), 300, 300, md5_3);
+ CompareBitmap(bitmap4.get(), 300, 300, kUnfocusedTextFormWithAbcChecksum);
EXPECT_TRUE(FPDF_SaveAsCopy(document(), this, 0));
@@ -1302,17 +1323,15 @@
UnloadPage(page);
}
// Check saved document
- VerifySavedDocument(300, 300, md5_3);
+ VerifySavedDocument(300, 300, kUnfocusedTextFormWithAbcChecksum);
}
// Tests using FPDF_REVERSE_BYTE_ORDER with FPDF_FFLDraw(). The two rendered
// bitmaps should be different.
TEST_F(FPDFFormFillEmbedderTest, BUG_1281) {
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
- const char kMd5Normal[] = "793689536cf64fe792c2f241888c0cf3";
const char kMd5ReverseByteOrder[] = "8077970bbd10333f18186a9bb459bbe6";
#else
- const char kMd5Normal[] = "6c674642154408e877d88c6c082d67e9";
const char kMd5ReverseByteOrder[] = "24fff03d1e663b7ece5f6e69ad837124";
#endif
@@ -1321,7 +1340,7 @@
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap_normal = RenderLoadedPage(page);
- CompareBitmap(bitmap_normal.get(), 200, 200, kMd5Normal);
+ CompareBitmap(bitmap_normal.get(), 200, 200, pdfium::kBug890322Checksum);
ScopedFPDFBitmap bitmap_reverse_byte_order =
RenderLoadedPageWithFlags(page, FPDF_REVERSE_BYTE_ORDER);
@@ -1338,13 +1357,10 @@
#endif
TEST_F(FPDFFormFillEmbedderTest, MAYBE_RemoveFormFieldHighlight) {
#if defined(OS_MACOSX)
- const char kMd5Normal[] = "d485541d958fef08d24e8eca3e537023";
const char kMd5NoHighlight[] = "5e4b87c5b304c6fa9bd5f6311260494e";
#elif defined(OS_WIN)
- const char kMd5Normal[] = "d3204faa62b607f0bd3893c9c22cabcb";
const char kMd5NoHighlight[] = "3ec0938828e0a37ef23f687ee95a80e1";
#else
- const char kMd5Normal[] = "b890950d4b9bc163b1a96797f3004b53";
const char kMd5NoHighlight[] = "006010c318457810a518aa5e0b33c498";
#endif
@@ -1352,7 +1368,7 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
ScopedFPDFBitmap bitmap1 = RenderLoadedPage(page);
- CompareBitmap(bitmap1.get(), 300, 300, kMd5Normal);
+ CompareBitmap(bitmap1.get(), 300, 300, kTextFormChecksum);
// Removing the highlight changes the rendering.
FPDF_RemoveFormFieldHighlight(form_handle());
@@ -1362,7 +1378,7 @@
// Restoring it gives the original rendering.
SetInitialFormFieldHighlight(form_handle());
ScopedFPDFBitmap bitmap3 = RenderLoadedPage(page);
- CompareBitmap(bitmap3.get(), 300, 300, kMd5Normal);
+ CompareBitmap(bitmap3.get(), 300, 300, kTextFormChecksum);
UnloadPage(page);
}
diff --git a/fpdfsdk/fpdf_thumbnail_embeddertest.cpp b/fpdfsdk/fpdf_thumbnail_embeddertest.cpp
index 101e1e4..184d4fd 100644
--- a/fpdfsdk/fpdf_thumbnail_embeddertest.cpp
+++ b/fpdfsdk/fpdf_thumbnail_embeddertest.cpp
@@ -9,6 +9,14 @@
#include "testing/embedder_test.h"
#include "testing/utils/hash.h"
+namespace {
+
+const char kSimpleThumbnailChecksum[] = "f6a8e8db01cccd52abb91ea433a17373";
+const char kThumbnailWithNoFiltersChecksum[] =
+ "b5696e586382b3373741f8a1d651cab0";
+
+} // namespace
+
class FPDFThumbnailEmbedderTest : public EmbedderTest {};
TEST_F(FPDFThumbnailEmbedderTest, GetDecodedThumbnailDataFromPageWithFilters) {
@@ -59,7 +67,6 @@
GetDecodedThumbnailDataFromPageWithNoFilters) {
ASSERT_TRUE(OpenDocument("thumbnail_with_no_filters.pdf"));
- const char kHashedDecodedData[] = "b5696e586382b3373741f8a1d651cab0";
const unsigned long kExpectedSize = 301u;
FPDF_PAGE page = LoadPage(0);
@@ -72,7 +79,7 @@
EXPECT_EQ(kExpectedSize, FPDFPage_GetDecodedThumbnailData(
page, thumb_buf.data(), length_bytes));
- EXPECT_EQ(kHashedDecodedData,
+ EXPECT_EQ(kThumbnailWithNoFiltersChecksum,
GenerateMD5Base16(thumb_buf.data(), kExpectedSize));
UnloadPage(page);
@@ -98,7 +105,6 @@
ASSERT_TRUE(OpenDocument("simple_thumbnail.pdf"));
{
- const char kHashedRawData[] = "f6a8e8db01cccd52abb91ea433a17373";
const unsigned long kExpectedSize = 1851u;
FPDF_PAGE page = LoadPage(0);
@@ -110,7 +116,7 @@
EXPECT_EQ(kExpectedSize, FPDFPage_GetRawThumbnailData(
page, thumb_buf.data(), length_bytes));
- EXPECT_EQ(kHashedRawData,
+ EXPECT_EQ(kSimpleThumbnailChecksum,
GenerateMD5Base16(thumb_buf.data(), kExpectedSize));
UnloadPage(page);
@@ -139,7 +145,6 @@
TEST_F(FPDFThumbnailEmbedderTest, GetRawThumbnailDataFromPageWithNoFilters) {
ASSERT_TRUE(OpenDocument("thumbnail_with_no_filters.pdf"));
- const char kHashedRawData[] = "b5696e586382b3373741f8a1d651cab0";
const unsigned long kExpectedSize = 301u;
FPDF_PAGE page = LoadPage(0);
@@ -151,7 +156,8 @@
EXPECT_EQ(kExpectedSize,
FPDFPage_GetRawThumbnailData(page, thumb_buf.data(), length_bytes));
- EXPECT_EQ(kHashedRawData, GenerateMD5Base16(thumb_buf.data(), kExpectedSize));
+ EXPECT_EQ(kThumbnailWithNoFiltersChecksum,
+ GenerateMD5Base16(thumb_buf.data(), kExpectedSize));
UnloadPage(page);
}
@@ -251,7 +257,6 @@
TEST_F(FPDFThumbnailEmbedderTest, GetThumbnailDoesNotAlterPage) {
ASSERT_TRUE(OpenDocument("simple_thumbnail.pdf"));
- const char kHashedRawData[] = "f6a8e8db01cccd52abb91ea433a17373";
const unsigned long kExpectedRawSize = 1851u;
FPDF_PAGE page = LoadPage(0);
@@ -264,7 +269,7 @@
EXPECT_EQ(kExpectedRawSize,
FPDFPage_GetRawThumbnailData(page, raw_thumb_buf.data(), raw_size));
- EXPECT_EQ(kHashedRawData,
+ EXPECT_EQ(kSimpleThumbnailChecksum,
GenerateMD5Base16(raw_thumb_buf.data(), kExpectedRawSize));
// Get the thumbnail
@@ -283,7 +288,7 @@
EXPECT_EQ(kExpectedRawSize,
FPDFPage_GetRawThumbnailData(page, new_raw_thumb_buf.data(),
new_raw_size));
- EXPECT_EQ(kHashedRawData,
+ EXPECT_EQ(kSimpleThumbnailChecksum,
GenerateMD5Base16(new_raw_thumb_buf.data(), kExpectedRawSize));
UnloadPage(page);
diff --git a/fpdfsdk/fpdf_transformpage_embeddertest.cpp b/fpdfsdk/fpdf_transformpage_embeddertest.cpp
index ef9d768..d938943 100644
--- a/fpdfsdk/fpdf_transformpage_embeddertest.cpp
+++ b/fpdfsdk/fpdf_transformpage_embeddertest.cpp
@@ -6,18 +6,19 @@
#include "build/build_config.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#if defined(OS_LINUX) || defined(OS_FUCHSIA)
#include "third_party/base/test/scoped_locale.h"
#endif
+using pdfium::kRectanglesChecksum;
+
namespace {
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
-constexpr char kOriginalMD5[] = "b4e411a6b5ffa59a50efede2efece597";
constexpr char kShrunkMD5[] = "78c52d6029283090036e6db6683401e2";
#else
-constexpr char kOriginalMD5[] = "0a90de37f52127619c3dfb642b5fa2fe";
constexpr char kShrunkMD5[] = "f4136cc9209207ab60eb8381a3df2e69";
#endif
@@ -227,7 +228,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
FPDFPage_SetCropBox(page, 10, 20, 100, 150);
@@ -303,7 +304,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
FPDFPage_SetMediaBox(page, 20, 30, 100, 150);
@@ -431,7 +432,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
{
@@ -446,7 +447,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
UnloadPage(page);
@@ -488,7 +489,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
{
@@ -503,7 +504,7 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
}
UnloadPage(page);
diff --git a/fpdfsdk/fpdf_view_embeddertest.cpp b/fpdfsdk/fpdf_view_embeddertest.cpp
index 0b4390f..2a937ab 100644
--- a/fpdfsdk/fpdf_view_embeddertest.cpp
+++ b/fpdfsdk/fpdf_view_embeddertest.cpp
@@ -15,10 +15,13 @@
#include "public/cpp/fpdf_scopers.h"
#include "public/fpdfview.h"
#include "testing/embedder_test.h"
+#include "testing/embedder_test_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/utils/file_util.h"
#include "testing/utils/path_service.h"
+using pdfium::kManyRectanglesChecksum;
+
namespace {
#if defined(OS_WIN)
@@ -779,7 +782,6 @@
TEST_F(FPDFViewEmbedderTest, FPDF_RenderPageBitmapWithMatrix) {
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
- const char kOriginalMD5[] = "b4e411a6b5ffa59a50efede2efece597";
const char kClippedMD5[] = "d2929fae285593cd1c1d446750d47d60";
const char kTopLeftQuarterMD5[] = "31d24d8c6a2bac380b2f5c393e77ecc9";
const char kHoriStretchedMD5[] = "af6eaa0d3388261693df5390138e4da1";
@@ -792,7 +794,6 @@
const char kLargerRotatedDiagonalMD5[] = "1dbf599403c235926d3ddcbc0ea10ee8";
const char kTileMD5[] = "387be3a84774f39aaa955314d2fe7106";
#else
- const char kOriginalMD5[] = "0a90de37f52127619c3dfb642b5fa2fe";
const char kClippedMD5[] = "a84cab93c102b9b9290fba3047ba702c";
const char kTopLeftQuarterMD5[] = "f11a11137c8834389e31cf555a4a6979";
const char kHoriStretchedMD5[] = "48ef9205941ed19691ccfa00d717187e";
@@ -818,8 +819,9 @@
EXPECT_EQ(200, page_width);
EXPECT_EQ(300, page_height);
+ using pdfium::kRectanglesChecksum;
ScopedFPDFBitmap bitmap = RenderLoadedPage(page);
- CompareBitmap(bitmap.get(), page_width, page_height, kOriginalMD5);
+ CompareBitmap(bitmap.get(), page_width, page_height, kRectanglesChecksum);
FS_RECTF page_rect{0, 0, page_width, page_height};
@@ -827,7 +829,7 @@
// the RenderLoadedPage() output.
FS_MATRIX identity_matrix{1, 0, 0, 1, 0, 0};
TestRenderPageBitmapWithMatrix(page, page_width, page_height, identity_matrix,
- page_rect, kOriginalMD5);
+ page_rect, kRectanglesChecksum);
// Again render with an identity matrix but with a smaller clipping rect.
FS_RECTF middle_of_page_rect{page_width / 4, page_height / 4,
@@ -1109,7 +1111,6 @@
#define MAYBE_RenderManyRectanglesWithFlags RenderManyRectanglesWithFlags
#endif
TEST_F(FPDFViewEmbedderTest, MAYBE_RenderManyRectanglesWithFlags) {
- static const char kNormalMD5[] = "b0170c575b65ecb93ebafada0ff0f038";
static const char kGrayscaleMD5[] = "7b553f1052069a9c61237a05db0955d6";
static const char kNoSmoothpathMD5[] = "ff6e5c509d1f6984bcdfd18b26a4203a";
@@ -1117,17 +1118,21 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
- TestRenderPageBitmapWithFlags(page, 0, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_ANNOT, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_LCD_TEXT, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_NO_NATIVETEXT, kNormalMD5);
+ TestRenderPageBitmapWithFlags(page, 0, kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_ANNOT, kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_LCD_TEXT, kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_NO_NATIVETEXT,
+ kManyRectanglesChecksum);
TestRenderPageBitmapWithFlags(page, FPDF_GRAYSCALE, kGrayscaleMD5);
TestRenderPageBitmapWithFlags(page, FPDF_RENDER_LIMITEDIMAGECACHE,
- kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_FORCEHALFTONE, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_PRINTING, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHTEXT, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHIMAGE, kNormalMD5);
+ kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_FORCEHALFTONE,
+ kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_PRINTING, kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHTEXT,
+ kManyRectanglesChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHIMAGE,
+ kManyRectanglesChecksum);
TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHPATH,
kNoSmoothpathMD5);
@@ -1141,20 +1146,20 @@
#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
static const char kGrayMD5[] = "3dfe1fc3889123d68e1748fefac65e72";
- static const char kNormalMD5[] = "4e7e280c1597222afcb0ee3bb90ec119";
// TODO(crbug.com/pdfium/1489): Add a test for FPDFBitmap_BGR in
// Skia/SkiaPaths modes once Skia provides support for BGR24 format.
#else
static const char kGrayMD5[] = "b561c11edc44dc3972125a9b8744fa2f";
static const char kBgrMD5[] = "ab6312e04c0d3f4e46fb302a45173d05";
- static const char kNormalMD5[] = "b0170c575b65ecb93ebafada0ff0f038";
TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_BGR, kBgrMD5);
#endif
TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_Gray, kGrayMD5);
- TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_BGRx, kNormalMD5);
- TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_BGRA, kNormalMD5);
+ TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_BGRx,
+ kManyRectanglesChecksum);
+ TestRenderPageBitmapWithExternalMemory(page, FPDFBitmap_BGRA,
+ kManyRectanglesChecksum);
UnloadPage(page);
}
@@ -1167,7 +1172,6 @@
#define MAYBE_RenderHelloWorldWithFlags RenderHelloWorldWithFlags
#endif // defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
TEST_F(FPDFViewEmbedderTest, MAYBE_RenderHelloWorldWithFlags) {
- static const char kNormalMD5[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
static const char kLcdTextMD5[] = "825e881f39e48254e64e2808987a6b8c";
static const char kNoSmoothtextMD5[] = "3d01e234120b783a3fffb27273ea1ea8";
@@ -1175,19 +1179,23 @@
FPDF_PAGE page = LoadPage(0);
ASSERT_TRUE(page);
- TestRenderPageBitmapWithFlags(page, 0, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_ANNOT, kNormalMD5);
+ using pdfium::kHelloWorldChecksum;
+ TestRenderPageBitmapWithFlags(page, 0, kHelloWorldChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_ANNOT, kHelloWorldChecksum);
TestRenderPageBitmapWithFlags(page, FPDF_LCD_TEXT, kLcdTextMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_NO_NATIVETEXT, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_GRAYSCALE, kNormalMD5);
+ TestRenderPageBitmapWithFlags(page, FPDF_NO_NATIVETEXT, kHelloWorldChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_GRAYSCALE, kHelloWorldChecksum);
TestRenderPageBitmapWithFlags(page, FPDF_RENDER_LIMITEDIMAGECACHE,
- kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_FORCEHALFTONE, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_PRINTING, kNormalMD5);
+ kHelloWorldChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_FORCEHALFTONE,
+ kHelloWorldChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_PRINTING, kHelloWorldChecksum);
TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHTEXT,
kNoSmoothtextMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHIMAGE, kNormalMD5);
- TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHPATH, kNormalMD5);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHIMAGE,
+ kHelloWorldChecksum);
+ TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHPATH,
+ kHelloWorldChecksum);
UnloadPage(page);
}
diff --git a/testing/BUILD.gn b/testing/BUILD.gn
index 787aa6d..19679c0 100644
--- a/testing/BUILD.gn
+++ b/testing/BUILD.gn
@@ -78,6 +78,8 @@
sources = [
"embedder_test.cpp",
"embedder_test.h",
+ "embedder_test_constants.cpp",
+ "embedder_test_constants.h",
"embedder_test_mock_delegate.h",
"embedder_test_timer_handling_delegate.h",
"fake_file_access.cpp",
diff --git a/testing/embedder_test_constants.cpp b/testing/embedder_test_constants.cpp
new file mode 100644
index 0000000..2c81dfd
--- /dev/null
+++ b/testing/embedder_test_constants.cpp
@@ -0,0 +1,38 @@
+// Copyright 2020 The PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "testing/embedder_test_constants.h"
+
+#include "build/build_config.h"
+
+namespace pdfium {
+
+const char kBlankPage612By792Checksum[] = "1940568c9ba33bac5d0b1ee9558c76b3";
+
+#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
+const char kBug890322Checksum[] = "793689536cf64fe792c2f241888c0cf3";
+#else
+const char kBug890322Checksum[] = "6c674642154408e877d88c6c082d67e9";
+#endif
+
+#if defined(OS_WIN)
+const char kHelloWorldChecksum[] = "795b7ce1626931aa06af0fa23b7d80bb";
+const char kHelloWorldRemovedChecksum[] = "93db13099042bafefb3c22a165bad684";
+#elif defined(OS_MACOSX)
+const char kHelloWorldChecksum[] = "c38b75e16a13852aee3b97d77a0f0ee7";
+const char kHelloWorldRemovedChecksum[] = "572b1022bb3e8f43dc671162fc62cf7f";
+#else
+const char kHelloWorldChecksum[] = "2baa4c0e1758deba1b9c908e1fbd04ed";
+const char kHelloWorldRemovedChecksum[] = "93dcc09055f87a2792c8e3065af99a1b";
+#endif
+
+#if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_)
+const char kManyRectanglesChecksum[] = "4e7e280c1597222afcb0ee3bb90ec119";
+const char kRectanglesChecksum[] = "b4e411a6b5ffa59a50efede2efece597";
+#else
+const char kManyRectanglesChecksum[] = "b0170c575b65ecb93ebafada0ff0f038";
+const char kRectanglesChecksum[] = "0a90de37f52127619c3dfb642b5fa2fe";
+#endif
+
+} // namespace pdfium
diff --git a/testing/embedder_test_constants.h b/testing/embedder_test_constants.h
new file mode 100644
index 0000000..016bacc
--- /dev/null
+++ b/testing/embedder_test_constants.h
@@ -0,0 +1,30 @@
+// Copyright 2020 The PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef TESTING_EMBEDDER_TEST_CONSTANTS_H_
+#define TESTING_EMBEDDER_TEST_CONSTANTS_H_
+
+namespace pdfium {
+
+// MD5 hash for rendering a 612x792 blank page.
+extern const char kBlankPage612By792Checksum[];
+
+// MD5 hash for rendering bug_890322.pdf.
+extern const char kBug890322Checksum[];
+
+// MD5 hash for rendering hello_world.pdf or bug_455199.pdf.
+extern const char kHelloWorldChecksum[];
+
+// MD5 hash for rendering hello_world.pdf after removing "Goodbye, world!".
+extern const char kHelloWorldRemovedChecksum[];
+
+// MD5 hash for rendering many_rectangles.pdf.
+extern const char kManyRectanglesChecksum[];
+
+// MD5 hash for rendering rectangles.pdf.
+extern const char kRectanglesChecksum[];
+
+} // namespace pdfium
+
+#endif // TESTING_EMBEDDER_TEST_CONSTANTS_H_