| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 // Unit tests for src/core/SkPoint.cpp and its header | 8 // Unit tests for src/core/SkPoint.cpp and its header |
| 9 | 9 |
| 10 #include "SkPoint.h" | 10 #include "SkPoint.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 | 101 |
| 102 // now that pt is normalized, we check its length | 102 // now that pt is normalized, we check its length |
| 103 length = pt.length(); | 103 length = pt.length(); |
| 104 REPORTER_ASSERT(reporter, SkScalarNearlyEqual(length, SK_Scalar1)); | 104 REPORTER_ASSERT(reporter, SkScalarNearlyEqual(length, SK_Scalar1)); |
| 105 } | 105 } |
| 106 | 106 |
| 107 // test that we handle very small values correctly. i.e. that we can | 107 // test that we handle very small values correctly. i.e. that we can |
| 108 // report failure if we try to normalize them. | 108 // report failure if we try to normalize them. |
| 109 static void test_underflow(skiatest::Reporter* reporter) { | 109 static void test_underflow(skiatest::Reporter* reporter) { |
| 110 SkPoint pt = { 1.0e-37f, 1.0e-37f }; | 110 SkPoint pt = { 1.0e-37f, 1.0e-37f }; |
| 111 SkPoint copy = pt; | 111 const SkPoint empty = { 0, 0 }; |
| 112 | 112 |
| 113 REPORTER_ASSERT(reporter, 0 == SkPoint::Normalize(&pt)); | 113 REPORTER_ASSERT(reporter, 0 == SkPoint::Normalize(&pt)); |
| 114 REPORTER_ASSERT(reporter, pt == copy); // pt is unchanged | 114 REPORTER_ASSERT(reporter, pt == empty); |
| 115 | 115 |
| 116 REPORTER_ASSERT(reporter, !pt.setLength(SK_Scalar1)); | 116 REPORTER_ASSERT(reporter, !pt.setLength(SK_Scalar1)); |
| 117 REPORTER_ASSERT(reporter, pt == copy); // pt is unchanged | 117 REPORTER_ASSERT(reporter, pt == empty); |
| 118 } | 118 } |
| 119 | 119 |
| 120 DEF_TEST(Point, reporter) { | 120 DEF_TEST(Point, reporter) { |
| 121 test_casts(reporter); | 121 test_casts(reporter); |
| 122 | 122 |
| 123 static const struct { | 123 static const struct { |
| 124 SkScalar fX; | 124 SkScalar fX; |
| 125 SkScalar fY; | 125 SkScalar fY; |
| 126 SkScalar fLength; | 126 SkScalar fLength; |
| 127 } gRec[] = { | 127 } gRec[] = { |
| (...skipping 21 matching lines...) Expand all Loading... |
| 149 slow.setLength(tests[i]); | 149 slow.setLength(tests[i]); |
| 150 fast.setLengthFast(tests[i]); | 150 fast.setLengthFast(tests[i]); |
| 151 | 151 |
| 152 if (slow.length() < FLT_MIN && fast.length() < FLT_MIN) continue; | 152 if (slow.length() < FLT_MIN && fast.length() < FLT_MIN) continue; |
| 153 | 153 |
| 154 SkScalar ratio = slow.length() / fast.length(); | 154 SkScalar ratio = slow.length() / fast.length(); |
| 155 REPORTER_ASSERT(reporter, ratio > 0.999f); | 155 REPORTER_ASSERT(reporter, ratio > 0.999f); |
| 156 REPORTER_ASSERT(reporter, ratio < 1.001f); | 156 REPORTER_ASSERT(reporter, ratio < 1.001f); |
| 157 } | 157 } |
| 158 } | 158 } |
| OLD | NEW |