Index: tests/PaintTest.cpp |
diff --git a/tests/PaintTest.cpp b/tests/PaintTest.cpp |
index e7954b913685aefa3b946a1e3e82d3a304e155db..c41e23ac54630e5844710f6427a7a8c1671bb208 100644 |
--- a/tests/PaintTest.cpp |
+++ b/tests/PaintTest.cpp |
@@ -59,7 +59,11 @@ static int find_first_zero(const uint16_t glyphs[], int count) { |
return count; |
} |
-static void test_cmap(skiatest::Reporter* reporter) { |
+DEF_TEST(Paint_cmap, reporter) { |
+ // need to implement charsToGlyphs on other backends (e.g. linux, win) |
+ // before we can run this tests everywhere |
+ return; |
+ |
static const int NGLYPHS = 64; |
SkUnichar src[NGLYPHS]; |
@@ -101,8 +105,7 @@ static void test_cmap(skiatest::Reporter* reporter) { |
REPORTER_ASSERT(reporter, NGLYPHS == nglyphs); |
REPORTER_ASSERT(reporter, index == first); |
- REPORTER_ASSERT(reporter, |
- !memcmp(glyphs0, glyphs1, NGLYPHS * sizeof(uint16_t))); |
+ REPORTER_ASSERT(reporter, 0 == memcmp(glyphs0, glyphs1, NGLYPHS * sizeof(uint16_t))); |
if (contains) { |
REPORTER_ASSERT(reporter, NGLYPHS == first); |
} else { |
@@ -113,7 +116,7 @@ static void test_cmap(skiatest::Reporter* reporter) { |
} |
// temparary api for bicubic, just be sure we can set/clear it |
-static void test_filterlevel(skiatest::Reporter* reporter) { |
+DEF_TEST(Paint_filterlevel, reporter) { |
SkPaint p0, p1; |
REPORTER_ASSERT(reporter, |
@@ -137,7 +140,7 @@ static void test_filterlevel(skiatest::Reporter* reporter) { |
} |
} |
-static void test_copy(skiatest::Reporter* reporter) { |
+DEF_TEST(Paint_copy, reporter) { |
SkPaint paint; |
// set a few member variables |
paint.setStyle(SkPaint::kStrokeAndFill_Style); |
@@ -159,7 +162,7 @@ static void test_copy(skiatest::Reporter* reporter) { |
uint32_t paintGenID = paint.getGenerationID(); |
uint32_t copiedPaintGenID = copiedPaint.getGenerationID(); |
REPORTER_ASSERT(reporter, paintGenID == copiedPaintGenID); |
- REPORTER_ASSERT(reporter, !memcmp(&paint, &copiedPaint, sizeof(paint))); |
+ REPORTER_ASSERT(reporter, paint == copiedPaint); |
#endif |
// copy the paint using the equal operator and check they are the same |
@@ -171,7 +174,7 @@ static void test_copy(skiatest::Reporter* reporter) { |
REPORTER_ASSERT(reporter, paint.getGenerationID() == paintGenID); |
REPORTER_ASSERT(reporter, copiedPaint.getGenerationID() != copiedPaintGenID); |
copiedPaintGenID = copiedPaint.getGenerationID(); // reset to the new value |
- REPORTER_ASSERT(reporter, memcmp(&paint, &copiedPaint, sizeof(paint))); |
+ REPORTER_ASSERT(reporter, paint == copiedPaint); // operator== ignores fGenerationID |
#endif |
// clean the paint and check they are back to their initial states |
@@ -185,14 +188,15 @@ static void test_copy(skiatest::Reporter* reporter) { |
// the reset function should increment the Generation ID |
REPORTER_ASSERT(reporter, paint.getGenerationID() != paintGenID); |
REPORTER_ASSERT(reporter, copiedPaint.getGenerationID() != copiedPaintGenID); |
- REPORTER_ASSERT(reporter, memcmp(&cleanPaint, &paint, sizeof(cleanPaint))); |
- REPORTER_ASSERT(reporter, memcmp(&cleanPaint, &copiedPaint, sizeof(cleanPaint))); |
+ // operator== ignores fGenerationID |
+ REPORTER_ASSERT(reporter, cleanPaint == paint); |
+ REPORTER_ASSERT(reporter, cleanPaint == copiedPaint); |
#endif |
} |
// found and fixed for webkit: mishandling when we hit recursion limit on |
// mostly degenerate cubic flatness test |
-static void regression_cubic(skiatest::Reporter* reporter) { |
+DEF_TEST(Paint_regression_cubic, reporter) { |
SkPath path, stroke; |
SkPaint paint; |
@@ -225,7 +229,7 @@ static void regression_cubic(skiatest::Reporter* reporter) { |
} |
// found and fixed for android: not initializing rect for string's of length 0 |
-static void regression_measureText(skiatest::Reporter* reporter) { |
+DEF_TEST(Paint_regression_measureText, reporter) { |
SkPaint paint; |
paint.setTextSize(12.0f); |
@@ -238,23 +242,6 @@ static void regression_measureText(skiatest::Reporter* reporter) { |
REPORTER_ASSERT(reporter, r.isEmpty()); |
} |
-DEF_TEST(Paint, reporter) { |
- // TODO add general paint tests |
- test_copy(reporter); |
- |
- // regression tests |
- regression_cubic(reporter); |
- regression_measureText(reporter); |
- |
- test_filterlevel(reporter); |
- |
- // need to implement charsToGlyphs on other backends (e.g. linux, win) |
- // before we can run this tests everywhere |
- if (false) { |
- test_cmap(reporter); |
- } |
-} |
- |
#define ASSERT(expr) REPORTER_ASSERT(r, expr) |
DEF_TEST(Paint_FlatteningTraits, r) { |