Kaydet (Commit) 6a3dab05 authored tarafından Chris Sherlock's avatar Chris Sherlock Kaydeden (comit) Tomaž Vajngerl

vcl: test Bitmap::MakeMono

Change-Id: I0387981296313eba4e0fb796750c0a5de8e3b7a2
Reviewed-on: https://gerrit.libreoffice.org/50306Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarTomaž Vajngerl <quikee@gmail.com>
üst 14e13fe5
...@@ -34,6 +34,7 @@ class BitmapTest : public CppUnit::TestFixture ...@@ -34,6 +34,7 @@ class BitmapTest : public CppUnit::TestFixture
{ {
void testCreation(); void testCreation();
void testEmpty(); void testEmpty();
void testMonochrome();
void testConvert(); void testConvert();
void testScale(); void testScale();
void testCRC(); void testCRC();
...@@ -41,6 +42,7 @@ class BitmapTest : public CppUnit::TestFixture ...@@ -41,6 +42,7 @@ class BitmapTest : public CppUnit::TestFixture
CPPUNIT_TEST_SUITE(BitmapTest); CPPUNIT_TEST_SUITE(BitmapTest);
CPPUNIT_TEST(testCreation); CPPUNIT_TEST(testCreation);
CPPUNIT_TEST(testEmpty); CPPUNIT_TEST(testEmpty);
CPPUNIT_TEST(testMonochrome);
CPPUNIT_TEST(testConvert); CPPUNIT_TEST(testConvert);
CPPUNIT_TEST(testScale); CPPUNIT_TEST(testScale);
CPPUNIT_TEST(testCRC); CPPUNIT_TEST(testCRC);
...@@ -166,6 +168,72 @@ void BitmapTest::testEmpty() ...@@ -166,6 +168,72 @@ void BitmapTest::testEmpty()
CPPUNIT_ASSERT(aBitmap.IsEmpty()); CPPUNIT_ASSERT(aBitmap.IsEmpty());
} }
void BitmapTest::testMonochrome()
{
Bitmap aBmp(Size(4, 4), 24);
BitmapWriteAccess aBmpAccess(aBmp);
// row 1
aBmpAccess.SetPixel(0, 0, BitmapColor(Color(COL_BLACK)));
aBmpAccess.SetPixel(0, 1, BitmapColor(Color(COL_BLUE)));
aBmpAccess.SetPixel(0, 2, BitmapColor(Color(COL_GREEN)));
aBmpAccess.SetPixel(0, 3, BitmapColor(Color(COL_CYAN)));
// row 2
aBmpAccess.SetPixel(1, 0, BitmapColor(Color(COL_RED)));
aBmpAccess.SetPixel(1, 1, BitmapColor(Color(COL_MAGENTA)));
aBmpAccess.SetPixel(1, 2, BitmapColor(Color(COL_BROWN)));
aBmpAccess.SetPixel(1, 3, BitmapColor(Color(COL_GRAY)));
// row 3
aBmpAccess.SetPixel(2, 0, BitmapColor(Color(COL_LIGHTGRAY)));
aBmpAccess.SetPixel(2, 1, BitmapColor(Color(COL_LIGHTBLUE)));
aBmpAccess.SetPixel(2, 2, BitmapColor(Color(COL_LIGHTGREEN)));
aBmpAccess.SetPixel(2, 3, BitmapColor(Color(COL_LIGHTCYAN)));
// row 4
aBmpAccess.SetPixel(3, 0, BitmapColor(Color(COL_LIGHTRED)));
aBmpAccess.SetPixel(3, 1, BitmapColor(Color(COL_LIGHTMAGENTA)));
aBmpAccess.SetPixel(3, 2, BitmapColor(Color(COL_YELLOW)));
aBmpAccess.SetPixel(3, 3, BitmapColor(Color(COL_WHITE)));
aBmp.MakeMono(63);
BitmapReadAccess aBmpReadAccess(aBmp);
CPPUNIT_ASSERT_EQUAL_MESSAGE("Black pixel wrong monochrome value",
BitmapColor(Color(COL_BLACK)), aBmpReadAccess.GetColor(0, 0));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Blue pixel wrong monochrome value", BitmapColor(Color(COL_BLACK)),
aBmpReadAccess.GetColor(0, 1));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Green pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(0, 2));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Cyan pixel wrong monochrome value", BitmapColor(Color(COL_WHITE)),
aBmpReadAccess.GetColor(0, 3));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Red pixel wrong monochrome value", BitmapColor(Color(COL_BLACK)),
aBmpReadAccess.GetColor(1, 0));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Magenta pixel wrong monochrome value",
BitmapColor(Color(COL_BLACK)), aBmpReadAccess.GetColor(1, 1));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Brown pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(1, 2));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Gray pixel wrong monochrome value", BitmapColor(Color(COL_WHITE)),
aBmpReadAccess.GetColor(1, 3));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light gray pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(2, 0));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light blue pixel wrong monochrome value",
BitmapColor(Color(COL_BLACK)), aBmpReadAccess.GetColor(2, 1));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light green pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(2, 2));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light cyan pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(2, 3));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light red pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(3, 0));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Light magenta pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(3, 1));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Yellow pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(3, 2));
CPPUNIT_ASSERT_EQUAL_MESSAGE("White pixel wrong monochrome value",
BitmapColor(Color(COL_WHITE)), aBmpReadAccess.GetColor(3, 3));
}
void BitmapTest::testConvert() void BitmapTest::testConvert()
{ {
Bitmap aBitmap(Size(10, 10), 8); Bitmap aBitmap(Size(10, 10), 8);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment