summaryrefslogtreecommitdiff
path: root/fpdfsdk/fpdf_editimg_unittest.cpp
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2018-10-24 17:31:01 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-10-24 17:31:01 +0000
commit866d688766dbfc01d69f586bfa197d57df0d9b96 (patch)
tree4a45f43f095c80ec88f8d8202b3e4e5570563ab9 /fpdfsdk/fpdf_editimg_unittest.cpp
parentcd11df62b64655c24d44a65b2a76d723fc214077 (diff)
downloadpdfium-866d688766dbfc01d69f586bfa197d57df0d9b96.tar.xz
Implement FPDFImageObj_GetMatrix().
BUG=pdfium:1183 Change-Id: I5b1051d8924264aa12534466ee51b2718b3eca67 Reviewed-on: https://pdfium-review.googlesource.com/c/44514 Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'fpdfsdk/fpdf_editimg_unittest.cpp')
-rw-r--r--fpdfsdk/fpdf_editimg_unittest.cpp61
1 files changed, 61 insertions, 0 deletions
diff --git a/fpdfsdk/fpdf_editimg_unittest.cpp b/fpdfsdk/fpdf_editimg_unittest.cpp
index 48bd7f146b..16e464d549 100644
--- a/fpdfsdk/fpdf_editimg_unittest.cpp
+++ b/fpdfsdk/fpdf_editimg_unittest.cpp
@@ -69,3 +69,64 @@ TEST_F(PDFEditImgTest, NewImageObjGenerateContent) {
FPDF_ClosePage(page);
FPDF_CloseDocument(doc);
}
+
+TEST_F(PDFEditImgTest, GetSetImageMatrix) {
+ FPDF_DOCUMENT doc = FPDF_CreateNewDocument();
+ FPDF_PAGEOBJECT image = FPDFPageObj_NewImageObj(doc);
+
+ double a;
+ double b;
+ double c;
+ double d;
+ double e;
+ double f;
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, nullptr, nullptr, nullptr,
+ nullptr, nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, &a, nullptr, nullptr, nullptr,
+ nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, &a, &b, nullptr, nullptr,
+ nullptr, nullptr));
+ EXPECT_FALSE(
+ FPDFImageObj_GetMatrix(nullptr, &a, &b, &c, nullptr, nullptr, nullptr));
+ EXPECT_FALSE(
+ FPDFImageObj_GetMatrix(nullptr, &a, &b, &c, nullptr, nullptr, nullptr));
+ EXPECT_FALSE(
+ FPDFImageObj_GetMatrix(nullptr, &a, &b, &c, &d, nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, &a, &b, &c, &d, &e, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, &a, &b, &c, &d, &e, &f));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(nullptr, &a, nullptr, &c, &d, &e, &f));
+
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, nullptr, nullptr, nullptr, nullptr,
+ nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, &a, nullptr, nullptr, nullptr,
+ nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, &a, &b, nullptr, nullptr, nullptr,
+ nullptr));
+ EXPECT_FALSE(
+ FPDFImageObj_GetMatrix(image, &a, &b, &c, nullptr, nullptr, nullptr));
+ EXPECT_FALSE(
+ FPDFImageObj_GetMatrix(image, &a, &b, &c, nullptr, nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, &a, &b, &c, &d, nullptr, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, &a, &b, &c, &d, &e, nullptr));
+ EXPECT_FALSE(FPDFImageObj_GetMatrix(image, &a, nullptr, &c, &d, &e, &f));
+
+ EXPECT_TRUE(FPDFImageObj_GetMatrix(image, &a, &b, &c, &d, &e, &f));
+ EXPECT_DOUBLE_EQ(1.0, a);
+ EXPECT_DOUBLE_EQ(0.0, b);
+ EXPECT_DOUBLE_EQ(0.0, c);
+ EXPECT_DOUBLE_EQ(1.0, d);
+ EXPECT_DOUBLE_EQ(0.0, e);
+ EXPECT_DOUBLE_EQ(0.0, f);
+
+ EXPECT_TRUE(FPDFImageObj_SetMatrix(image, 1, 2, 3, 4, 5, 6));
+ EXPECT_TRUE(FPDFImageObj_GetMatrix(image, &a, &b, &c, &d, &e, &f));
+ EXPECT_DOUBLE_EQ(1.0, a);
+ EXPECT_DOUBLE_EQ(2.0, b);
+ EXPECT_DOUBLE_EQ(3.0, c);
+ EXPECT_DOUBLE_EQ(4.0, d);
+ EXPECT_DOUBLE_EQ(5.0, e);
+ EXPECT_DOUBLE_EQ(6.0, f);
+
+ FPDFPageObj_Destroy(image);
+ FPDF_CloseDocument(doc);
+}