Chromium Code Reviews| Index: tests/SerializationTest.cpp |
| diff --git a/tests/SerializationTest.cpp b/tests/SerializationTest.cpp |
| index b6ee978869c1b7fda10f471ba2c63e70b4b3dad6..0eaf178540565717993eede2181644b101dbd0bc 100644 |
| --- a/tests/SerializationTest.cpp |
| +++ b/tests/SerializationTest.cpp |
| @@ -261,6 +261,48 @@ static void TestBitmapSerialization(const SkBitmap& validBitmap, |
| } |
| } |
| +static void TestXfermodeSerialization(skiatest::Reporter* reporter) { |
|
reed1
2014/09/24 15:58:46
Ensuring that this list matches the enum in SkXfer
Stephen White
2014/09/24 16:38:39
Good idea. Done.
|
| + const SkXfermode::Mode gModes[] = { |
| + SkXfermode::kClear_Mode, |
| + SkXfermode::kSrc_Mode, |
| + SkXfermode::kDst_Mode, |
| + // Don't test SrcOver_Mode, since this (correctly) deserializes as NULL |
| +// SkXfermode::kSrcOver_Mode, |
| + SkXfermode::kDstOver_Mode, |
| + SkXfermode::kSrcIn_Mode, |
| + SkXfermode::kDstIn_Mode, |
| + SkXfermode::kSrcOut_Mode, |
| + SkXfermode::kDstOut_Mode, |
| + SkXfermode::kSrcATop_Mode, |
| + SkXfermode::kDstATop_Mode, |
| + SkXfermode::kXor_Mode, |
| + |
| + SkXfermode::kPlus_Mode, |
| + SkXfermode::kModulate_Mode, |
| + SkXfermode::kScreen_Mode, |
| + SkXfermode::kOverlay_Mode, |
| + SkXfermode::kDarken_Mode, |
| + SkXfermode::kLighten_Mode, |
| + SkXfermode::kColorDodge_Mode, |
| + SkXfermode::kColorBurn_Mode, |
| + SkXfermode::kHardLight_Mode, |
| + SkXfermode::kSoftLight_Mode, |
| + SkXfermode::kDifference_Mode, |
| + SkXfermode::kExclusion_Mode, |
| + SkXfermode::kMultiply_Mode, |
| + SkXfermode::kHue_Mode, |
| + SkXfermode::kSaturation_Mode, |
| + SkXfermode::kColor_Mode, |
| + SkXfermode::kLuminosity_Mode, |
| + }; |
| + |
| + for (size_t i = 0; i < SK_ARRAY_COUNT(gModes); i++) { |
| + SkAutoTUnref<SkXfermode> mode(SkXfermode::Create(gModes[i])); |
| + REPORTER_ASSERT(reporter, mode.get()); |
| + TestFlattenableSerialization<SkXfermode>(mode.get(), true, reporter); |
| + } |
| +} |
| + |
| static SkBitmap draw_picture(SkPicture& picture) { |
| SkBitmap bitmap; |
| bitmap.allocN32Pixels(SkScalarCeilToInt(picture.cullRect().width()), |
| @@ -406,6 +448,11 @@ DEF_TEST(Serialization, reporter) { |
| TestObjectSerialization(®ion, reporter); |
| } |
| + // Test xfermode serialization |
| + { |
| + TestXfermodeSerialization(reporter); |
| + } |
| + |
| // Test string serialization |
| { |
| SkString string("string"); |