diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2016-06-12 16:53:17 +0900 |
---|---|---|
committer | Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> | 2016-11-16 11:10:27 +0100 |
commit | 05f6bb9532b4c780606fd2bf93e8fb49331a62ad (patch) | |
tree | 3dd09ff70870442e3b1611eca3faef0e76015c5b | |
parent | 6ee50dc2e72d14da812d567b9927b8d272bbcac6 (diff) |
Add testcases for 32-bit bitmap
Change-Id: I531b8ba7cd691a526392a85da9cb8456a1f16177
-rw-r--r-- | vcl/qa/cppunit/BitmapTest.cxx | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/vcl/qa/cppunit/BitmapTest.cxx b/vcl/qa/cppunit/BitmapTest.cxx index bc363667a529..96adffe37159 100644 --- a/vcl/qa/cppunit/BitmapTest.cxx +++ b/vcl/qa/cppunit/BitmapTest.cxx @@ -16,6 +16,7 @@ #include <vcl/bitmap.hxx> #include <vcl/bitmapaccess.hxx> +#include <vcl/alpha.hxx> #include <vcl/virdev.hxx> #include <rtl/strbuf.hxx> @@ -33,18 +34,57 @@ namespace class BitmapTest : public CppUnit::TestFixture { + void testBitmap32(); + void testErase(); void testConvert(); void testScale(); void testCRC(); - void testBitmap32(); CPPUNIT_TEST_SUITE(BitmapTest); + CPPUNIT_TEST(testBitmap32); + CPPUNIT_TEST(testErase); CPPUNIT_TEST(testConvert); CPPUNIT_TEST(testScale); CPPUNIT_TEST(testCRC); CPPUNIT_TEST_SUITE_END(); }; +void BitmapTest::testErase() +{ + Bitmap aBitmap(Size(3, 3), 24); + { + Bitmap::ScopedWriteAccess pWriteAccess(aBitmap); + pWriteAccess->Erase(Color(0x11, 0x22, 0x33)); + } + { + Bitmap::ScopedReadAccess pReadAccess(aBitmap); + Color aColor((Color)pReadAccess->GetPixel(0, 0)); + CPPUNIT_ASSERT_EQUAL(RGB_COLORDATA(0x11, 0x22, 0x33), aColor.GetColor()); + } +} + +void BitmapTest::testBitmap32() +{ + Bitmap aBitmap(Size(3, 3), 32); + { + Bitmap::ScopedWriteAccess pWriteAccess(aBitmap); + pWriteAccess->Erase(TRGB_COLORDATA(0xFF, 0x11, 0x22, 0x33)); + pWriteAccess->SetPixel(1, 1, BitmapColor(0x44, 0xFF, 0xBB, 0x00)); + pWriteAccess->SetPixel(2, 2, BitmapColor(0x88, 0x77, 0x66, 0x55)); + } + { + Bitmap::ScopedReadAccess pReadAccess(aBitmap); + BitmapColor aColor = pReadAccess->GetPixel(0, 0); + CPPUNIT_ASSERT_EQUAL(TRGB_COLORDATA(0xFF, 0x00, 0x00, 0x00), Color(aColor).GetColor()); + + aColor = pReadAccess->GetPixel(1, 1); + CPPUNIT_ASSERT_EQUAL(TRGB_COLORDATA(0x00, 0x44, 0xFF, 0xBB), Color(aColor).GetColor()); + + aColor = pReadAccess->GetPixel(2, 2); + CPPUNIT_ASSERT_EQUAL(TRGB_COLORDATA(0x55, 0x88, 0x77, 0x66), Color(aColor).GetColor()); + } +} + void BitmapTest::testConvert() { Bitmap aBitmap(Size(10, 10), 8); |