aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-04-19 12:25:00 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-04-19 12:25:00 +0000
commit87f99cb543dbba608136bbd2a7b1e6b3356fd6f9 (patch)
tree228b62805a908377bf9caa7fe9dbbf37d1e3e967 /tests
parentf685a22971a90c54b7e12d45e9aa89cc2a2e1a7f (diff)
ensure that negative zeros are still ignored when computing isIdentity()
crbug.com/162747 git-svn-id: http://skia.googlecode.com/svn/trunk@8761 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'tests')
-rw-r--r--tests/Matrix44Test.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/Matrix44Test.cpp b/tests/Matrix44Test.cpp
index bdeafd4ff9..b2c7071b79 100644
--- a/tests/Matrix44Test.cpp
+++ b/tests/Matrix44Test.cpp
@@ -231,6 +231,17 @@ static void test_gettype(skiatest::Reporter* reporter) {
matrix.set(3, 2, 1);
REPORTER_ASSERT(reporter, matrix.getType() & SkMatrix44::kPerspective_Mask);
+
+ // ensure that negative zero is treated as zero
+ SkMScalar dx = 0;
+ SkMScalar dy = 0;
+ SkMScalar dz = 0;
+ matrix.setTranslate(-dx, -dy, -dz);
+ REPORTER_ASSERT(reporter, matrix.isIdentity());
+ matrix.preTranslate(-dx, -dy, -dz);
+ REPORTER_ASSERT(reporter, matrix.isIdentity());
+ matrix.postTranslate(-dx, -dy, -dz);
+ REPORTER_ASSERT(reporter, matrix.isIdentity());
}
static void test_common_angles(skiatest::Reporter* reporter) {