vcl/CppunitTest_vcl_bitmap_test.mk       |    1 
 vcl/CppunitTest_vcl_bitmapfilter_test.mk |   48 ++++++++++++++++++++++++
 vcl/Module_vcl.mk                        |    1 
 vcl/qa/cppunit/BitmapFilterTest.cxx      |   60 +++++++------------------------
 4 files changed, 64 insertions(+), 46 deletions(-)

New commits:
commit ad93a9facf8b97fc1d87251ca30b8f4eefa3e261
Author:     Xisco Fauli <[email protected]>
AuthorDate: Fri Jan 16 10:55:36 2026 +0100
Commit:     Xisco Fauli <[email protected]>
CommitDate: Fri Jan 16 16:10:38 2026 +0100

    vcl_bitmapfilter_test: use CPPUNIT_TEST_FIXTURE
    
    Move vcl/qa/cppunit/BitmapFilterTest to a
    new makefile, otherwise it fails with
    /usr/bin/ld.gold: error: 
/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/workdir/CxxObject/vcl/qa/cppunit/BitmapFilterTest.o:
 definición múltiple de 'cppunitTestPlugIn'
    /usr/bin/ld.gold: 
/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/workdir/CxxObject/vcl/qa/cppunit/BitmapTest.o:
 previous definition here
    /usr/bin/ld.gold: error: 
/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/workdir/CxxObject/vcl/qa/cppunit/BitmapFilterTest.o:
 definición múltiple de 'main'
    /usr/bin/ld.gold: 
/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/workdir/CxxObject/vcl/qa/cppunit/BitmapTest.o:
 previous definition here
    collect2: error: ld returned 1 exit status
    make[1]: *** 
[/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/solenv/gbuild/LinkTarget.mk:869:
 
/mnt/4d311c06-5193-4f61-a3f6-53ca4d9ea1e1/libreoffice/workdir/LinkTarget/CppunitTest/libtest_vcl_bitmap_test.so]
 Error 1
    make: *** [Makefile:186: CppunitTest_vcl_bitmap_test] Error 2
    
    In preparation for a follow-up commit
    
    Change-Id: I2b9c1f246e657225e707900244db053e251ae58e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197437
    Reviewed-by: Xisco Fauli <[email protected]>
    Tested-by: Jenkins

diff --git a/vcl/CppunitTest_vcl_bitmap_test.mk 
b/vcl/CppunitTest_vcl_bitmap_test.mk
index d9cec0023fda..fcbb650d0e90 100644
--- a/vcl/CppunitTest_vcl_bitmap_test.mk
+++ b/vcl/CppunitTest_vcl_bitmap_test.mk
@@ -15,7 +15,6 @@ $(eval $(call 
gb_CppunitTest_add_exception_objects,vcl_bitmap_test, \
     vcl/qa/cppunit/bitmapcolor \
     vcl/qa/cppunit/ScanlineToolsTest \
     vcl/qa/cppunit/BitmapScaleTest \
-    vcl/qa/cppunit/BitmapFilterTest \
     vcl/qa/cppunit/BmpFilterTest \
     vcl/qa/cppunit/XpmFilterTest \
 ))
diff --git a/vcl/CppunitTest_vcl_bitmapfilter_test.mk 
b/vcl/CppunitTest_vcl_bitmapfilter_test.mk
new file mode 100644
index 000000000000..01491ee528c3
--- /dev/null
+++ b/vcl/CppunitTest_vcl_bitmapfilter_test.mk
@@ -0,0 +1,48 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_CppunitTest_CppunitTest,vcl_bitmapfilter_test))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,vcl_bitmapfilter_test, \
+    vcl/qa/cppunit/BitmapFilterTest \
+))
+
+$(eval $(call gb_CppunitTest_use_externals,vcl_bitmapfilter_test,\
+       boost_headers \
+))
+
+$(eval $(call gb_CppunitTest_set_include,vcl_bitmapfilter_test,\
+    $$(INCLUDE) \
+    -I$(SRCDIR)/vcl/inc \
+))
+
+$(eval $(call gb_CppunitTest_use_libraries,vcl_bitmapfilter_test, \
+       basegfx \
+       comphelper \
+       cppu \
+       cppuhelper \
+       sal \
+    svt \
+       test \
+       tl \
+       unotest \
+       vcl \
+       utl \
+))
+
+$(eval $(call gb_CppunitTest_use_sdk_api,vcl_bitmapfilter_test))
+
+$(eval $(call gb_CppunitTest_use_ure,vcl_bitmapfilter_test))
+$(eval $(call gb_CppunitTest_use_vcl,vcl_bitmapfilter_test))
+
+$(eval $(call gb_CppunitTest_use_rdb,vcl_bitmapfilter_test,services))
+
+$(eval $(call gb_CppunitTest_use_configuration,vcl_bitmapfilter_test))
+
+# vim: set noet sw=4 ts=4:
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index a23eb85a04f3..edbb9ef6e40a 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -228,6 +228,7 @@ $(eval $(call gb_Module_add_check_targets,vcl,\
     CppunitTest_vcl_drawmode \
     CppunitTest_vcl_lifecycle \
     CppunitTest_vcl_bitmap_test \
+    CppunitTest_vcl_bitmapfilter_test \
     CppunitTest_vcl_bitmapprocessor_test \
     CppunitTest_vcl_cjk \
     CppunitTest_vcl_graphic_test \
diff --git a/vcl/qa/cppunit/BitmapFilterTest.cxx 
b/vcl/qa/cppunit/BitmapFilterTest.cxx
index a25b283f1ecc..bf34354862ed 100644
--- a/vcl/qa/cppunit/BitmapFilterTest.cxx
+++ b/vcl/qa/cppunit/BitmapFilterTest.cxx
@@ -42,37 +42,7 @@ public:
     {
     }
 
-    void testClampAlpha();
-    void testBlurCorrectness();
-    void testBasicMorphology();
-    void testPerformance();
-    void testGenerateStripRanges();
-    void testMultiplyBlendFilter();
-    void testNormalBlendFilter();
-    void testDarkenBlendFilter();
-    void testLightenBlendFilter();
-    void testScreenBlendFilter();
-    void testArithmeticBlendFilter();
-    void testDuoToneFilter_24_BPP();
-    void testDuoToneFilter_32_BPP();
-
-    CPPUNIT_TEST_SUITE(BitmapFilterTest);
-    CPPUNIT_TEST(testClampAlpha);
-    CPPUNIT_TEST(testBlurCorrectness);
-    CPPUNIT_TEST(testBasicMorphology);
-    CPPUNIT_TEST(testPerformance);
-    CPPUNIT_TEST(testGenerateStripRanges);
-    CPPUNIT_TEST(testMultiplyBlendFilter);
-    CPPUNIT_TEST(testNormalBlendFilter);
-    CPPUNIT_TEST(testDarkenBlendFilter);
-    CPPUNIT_TEST(testLightenBlendFilter);
-    CPPUNIT_TEST(testScreenBlendFilter);
-    CPPUNIT_TEST(testArithmeticBlendFilter);
-    CPPUNIT_TEST(testDuoToneFilter_24_BPP);
-    CPPUNIT_TEST(testDuoToneFilter_32_BPP);
-    CPPUNIT_TEST_SUITE_END();
-
-private:
+protected:
     OUString getFullUrl(std::u16string_view sFileName)
     {
         return m_directories.getURLFromSrc(u"vcl/qa/cppunit/data/") + 
sFileName;
@@ -97,7 +67,7 @@ private:
     }
 };
 
-void BitmapFilterTest::testClampAlpha()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testClampAlpha)
 {
     // Setup test bitmap
     Size aSize(1, 1);
@@ -112,7 +82,7 @@ void BitmapFilterTest::testClampAlpha()
     CPPUNIT_ASSERT_EQUAL(static_cast<sal_uInt8>(0xFF), 
aBitmap24Bit.GetPixelColor(0, 0).GetAlpha());
 }
 
-void BitmapFilterTest::testBlurCorrectness()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testBlurCorrectness)
 {
     // Setup test bitmap
     Size aSize(41, 31);
@@ -174,7 +144,7 @@ void BitmapFilterTest::testBlurCorrectness()
     }
 }
 
-void BitmapFilterTest::testBasicMorphology()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testBasicMorphology)
 {
     const Bitmap aOrigBitmap = loadBitmap(u"testBasicMorphology.png");
     const Bitmap aRefBitmapDilated1 = 
loadBitmap(u"testBasicMorphologyDilated1.png");
@@ -203,7 +173,7 @@ void BitmapFilterTest::testBasicMorphology()
     CPPUNIT_ASSERT_EQUAL(aRefBitmapDilated2Eroded1.GetChecksum(), 
aTransformBitmap.GetChecksum());
 }
 
-void BitmapFilterTest::testPerformance()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testPerformance)
 {
     if (!constEnablePerformanceTest)
         return;
@@ -250,7 +220,7 @@ void BitmapFilterTest::testPerformance()
     }
 }
 
-void BitmapFilterTest::testGenerateStripRanges()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testGenerateStripRanges)
 {
     {
         constexpr tools::Long nFirstIndex = 0;
@@ -313,7 +283,7 @@ void BitmapFilterTest::testGenerateStripRanges()
     }
 }
 
-void BitmapFilterTest::testMultiplyBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testMultiplyBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -363,7 +333,7 @@ void BitmapFilterTest::testMultiplyBlendFilter()
     }
 }
 
-void BitmapFilterTest::testNormalBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testNormalBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -413,7 +383,7 @@ void BitmapFilterTest::testNormalBlendFilter()
     }
 }
 
-void BitmapFilterTest::testDarkenBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testDarkenBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -460,7 +430,7 @@ void BitmapFilterTest::testDarkenBlendFilter()
     }
 }
 
-void BitmapFilterTest::testLightenBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testLightenBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -510,7 +480,7 @@ void BitmapFilterTest::testLightenBlendFilter()
     }
 }
 
-void BitmapFilterTest::testScreenBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testScreenBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -560,7 +530,7 @@ void BitmapFilterTest::testScreenBlendFilter()
     }
 }
 
-void BitmapFilterTest::testArithmeticBlendFilter()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testArithmeticBlendFilter)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -787,7 +757,7 @@ void BitmapFilterTest::testArithmeticBlendFilter()
     }
 }
 
-void BitmapFilterTest::testDuoToneFilter_24_BPP()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testDuoToneFilter_24_BPP)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N24_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N24_BPP, 
aRedBitmap.getPixelFormat());
@@ -906,7 +876,7 @@ void BitmapFilterTest::testDuoToneFilter_24_BPP()
     }
 }
 
-void BitmapFilterTest::testDuoToneFilter_32_BPP()
+CPPUNIT_TEST_FIXTURE(BitmapFilterTest, testDuoToneFilter_32_BPP)
 {
     Bitmap aRedBitmap(Size(4, 4), vcl::PixelFormat::N32_BPP);
     CPPUNIT_ASSERT_EQUAL(vcl::PixelFormat::N32_BPP, 
aRedBitmap.getPixelFormat());
@@ -1028,6 +998,6 @@ void BitmapFilterTest::testDuoToneFilter_32_BPP()
 
 } // namespace
 
-CPPUNIT_TEST_SUITE_REGISTRATION(BitmapFilterTest);
+CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Reply via email to