summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2016-06-12 16:53:17 +0900
committerTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2016-11-16 11:10:27 +0100
commit05f6bb9532b4c780606fd2bf93e8fb49331a62ad (patch)
tree3dd09ff70870442e3b1611eca3faef0e76015c5b
parent6ee50dc2e72d14da812d567b9927b8d272bbcac6 (diff)
Add testcases for 32-bit bitmap
Change-Id: I531b8ba7cd691a526392a85da9cb8456a1f16177
-rw-r--r--vcl/qa/cppunit/BitmapTest.cxx42
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);