diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/SkNxTest.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/SkNxTest.cpp b/tests/SkNxTest.cpp index 58932148cb..4005d2518f 100644 --- a/tests/SkNxTest.cpp +++ b/tests/SkNxTest.cpp @@ -192,3 +192,19 @@ DEF_TEST(Sk4px_muldiv255round, r) { } } } + +DEF_TEST(Sk4px_widening, r) { + SkPMColor colors[] = { + SkPreMultiplyColor(0xff00ff00), + SkPreMultiplyColor(0x40008000), + SkPreMultiplyColor(0x7f020406), + SkPreMultiplyColor(0x00000000), + }; + auto packed = Sk4px::Load4(colors); + + auto wideLo = packed.widenLo(), + wideHi = packed.widenHi(), + wideLoHi = packed.widenLoHi(), + wideLoHiAlt = wideLo + wideHi; + REPORTER_ASSERT(r, 0 == memcmp(&wideLoHi, &wideLoHiAlt, sizeof(wideLoHi))); +} |