This is an automated email from the ASF dual-hosted git repository.

leginee pushed a commit to branch bazel-migration
in repository https://gitbox.apache.org/repos/asf/openoffice.git

commit 7e270d8cb42280340f9c5d6f7cde205a65086b59
Author: Peter Kovacs <[email protected]>
AuthorDate: Wed Aug 5 07:50:33 2026 +0200

    test(cppuhelper): confirm propertysetmixin 3/6; add it to cppuhelper_tests
    
    Run confirmed: testCpp{Empty1,Empty2,Full} pass, 
testJava{Empty1,Empty2,Full}
    fail — exactly the predicted split.
    
    The split is itself the evidence that the wiring is right.  The three test
    BODIES are shared functions (testEmpty1/testEmpty2/testFull), each called 
once
    with getCppSupplier() and once with getJavaSupplier().  The identical body
    passing for C++ and failing for Java isolates the fault to service
    instantiation rather than to anything in PropertySetMixin, and confirms the
    UNO_TYPES/UNO_SERVICES override, the private IDL types and the component DLL
    loading through the vnd.sun.star.expand: URI all work.  The three reds need 
the
    suite's Java component (.uno.jar via javamaker) and will go green when the 
Java
    bucket lands, with no change here.
    
    Added to //main/cppuhelper:cppuhelper_tests, which is consequently MIXED 
rather
    than a green gate.  That is deliberate and matches //main/sal:sal_tests: 
every
    wired suite belongs in its module's test_suite, passing and failing alike,
    because a red left out is a test that gets forgotten.
    
    Co-Authored-By: Claude Opus 5 <[email protected]>
---
 CLAUDE.md                   | 18 +++++++++++++-----
 main/cppuhelper/BUILD.bazel | 14 ++++++++++++++
 main/cppuhelper/readme.md   | 16 ++++++++++++++--
 3 files changed, 41 insertions(+), 7 deletions(-)

diff --git a/CLAUDE.md b/CLAUDE.md
index ff38e03a75..884cb11637 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -189,8 +189,9 @@ test          🔨  C++ unit-test infra runnable — NOW THE 
FRONT-LINE TASK: br
                       decade may encode a mechanism the product no longer has 
— check
                       the test's BOOTSTRAP PATH against current source before 
costing
                       the fixture.
-                    • cppuhelper/qa/propertysetmixin — WIRED 2026-08-05, 
builds clean,
-                      RUN NOT YET CONFIRMED.  It is fixture (a) (in-process 
bootstrap,
+                    • cppuhelper/qa/propertysetmixin — DONE 2026-08-05, 3/6 
GREEN
+                      (testCpp{Empty1,Empty2,Full}); the 3 reds are the Java 
half, see
+                      below.  It is fixture (a) (in-process bootstrap,
                       NO soffice) despite living behind OOO_SUBSEQUENT_TESTS — 
the old
                       note in cppuhelper/BUILD.bazel calling it an 
OfficeConnection test
                       was wrong.  Uses the MODERN .component mechanism, so it 
does NOT
@@ -206,11 +207,18 @@ test          🔨  C++ unit-test infra runnable — NOW THE 
FRONT-LINE TASK: br
                       ENVIRONMENT BEFORE the ini, so env 
UNO_TYPES/UNO_SERVICES REPLACE
                       fundamental.ini's and must REPEAT them (incl. 
oovbaapi.rdb) before
                       adding the test's own — DRIFT WATCH on 
main/staging/fundamental.ini.
-                      EXPECTED 3/6 RED: testJava{Empty1,Empty2,Full} need the 
suite's
+                      3 RED, as predicted: testJava{Empty1,Empty2,Full} need 
the suite's
                       OTHER component, a Java one (JavaSupplier.java + 
.uno.jar via
                       javamaker) = Java bucket; they surface as "Unknown C++ 
exception"
-                      (UNO exceptions don't derive from std::exception).  The 
3 C++ cases
-                      are the ones that actually exercise PropertySetMixin.
+                      (UNO exceptions don't derive from std::exception).  They 
turn green
+                      there with NO change here.  The 3 test BODIES are shared 
functions
+                      called once per supplier, so the same body passing for 
C++ and
+                      failing for Java ISOLATES the fault to service 
instantiation — and
+                      is the proof the rest of the wiring is right (registry 
override,
+                      private IDL types, component DLL via the expand: URI).
+                      //main/cppuhelper:cppuhelper_tests is therefore now 
MIXED, not a
+                      green gate — a red left out of its module's suite is a 
test that
+                      gets forgotten (same convention as //main/sal:sal_tests).
                       See main/cppuhelper/readme.md.
                     • xmlsecurity/qa/certext — BLOCKED, and NOT on fixture (b) 
as
                       recorded here before: it #includes <neon/ne_ssl.h> and 
calls
diff --git a/main/cppuhelper/BUILD.bazel b/main/cppuhelper/BUILD.bazel
index 6b588be016..332d02a50e 100644
--- a/main/cppuhelper/BUILD.bazel
+++ b/main/cppuhelper/BUILD.bazel
@@ -219,10 +219,15 @@ gtest_test(
     runtime_dlls = _QA_RUNTIME_DLLS,
 )
 
+# NOTE this suite is MIXED, not a green gate: cppuhelper_qa_propertysetmixin
+# contributes 3 known-red cases (see its own note below).  Every wired suite
+# belongs here, passing and failing alike — same convention as //main/sal:
+# a red left OUT of its module's suite is a test that gets forgotten.
 test_suite(
     name = "cppuhelper_tests",
     tests = [
         ":cppuhelper_qa_ifcontainer",
+        ":cppuhelper_qa_propertysetmixin",
         ":cppuhelper_qa_unourl",
         ":cppuhelper_qa_weak",
     ],
@@ -299,6 +304,15 @@ services_rdb(
     testonly = True,
 )
 
+# CONFIRMED 2026-08-05: 3 of 6 pass (testCpp{Empty1,Empty2,Full}), 3 red.
+# The three test BODIES are shared functions — testEmpty1/testEmpty2/testFull,
+# each called once with getCppSupplier() and once with getJavaSupplier() — so
+# the identical body passing for C++ and failing for Java isolates the fault to
+# service instantiation, not to anything in PropertySetMixin.  That is also the
+# proof that the rest of this wiring is correct: the UNO_TYPES/UNO_SERVICES
+# override, the private IDL types, and the component DLL loading through the
+# vnd.sun.star.expand: URI all work.
+#
 # EXPECTED RED: 3 of 6.  testJavaEmpty1/testJavaEmpty2/testJavaFull ask for
 # test.cppuhelper.propertysetmixin.JavaSupplier, which lives in the suite's
 # OTHER component — a Java one (JavaSupplier.java + qa_propertysetmixin.java.
diff --git a/main/cppuhelper/readme.md b/main/cppuhelper/readme.md
index b17d124e2c..3fed1de1d5 100644
--- a/main/cppuhelper/readme.md
+++ b/main/cppuhelper/readme.md
@@ -77,7 +77,7 @@ bootstrap" landmine applies to `cppuhelper3MSC` and friends, 
whose directory
 cppuhelper resolves from its *own* module handle. This one is reached only
 through the services.rdb URI.
 
-### Expected: 3 of 6 red
+### 3 of 6 red (confirmed 2026-08-05)
 
 `testJavaEmpty1` / `testJavaEmpty2` / `testJavaFull` ask for
 `test.cppuhelper.propertysetmixin.JavaSupplier`, which lives in the suite's
@@ -90,7 +90,19 @@ the miss, not a crash.
 
 The three C++ cases are the ones that actually exercise `PropertySetMixin`.
 Wiring the suite now means the mixin is covered, and the Java half turns green
-for free once the Java bucket lands.
+for free once the Java bucket lands — with no change here.
+
+**Why the split is itself the evidence.** The three test *bodies* are shared
+functions (`testEmpty1`, `testEmpty2`, `testFull`), each called once with
+`getCppSupplier()` and once with `getJavaSupplier()`. The identical body 
passing
+for C++ and failing for Java isolates the fault to service instantiation rather
+than to anything in the mixin — and confirms the rest of this wiring works: the
+`UNO_TYPES`/`UNO_SERVICES` override, the private IDL types resolving, and the
+component DLL loading through the `vnd.sun.star.expand:` URI.
+
+`//main/cppuhelper:cppuhelper_tests` is therefore **mixed, not a green gate**.
+The suite includes this target deliberately: a red left out of its module's
+suite is a test that gets forgotten (same convention as 
`//main/sal:sal_tests`).
 
 ### DEF file
 

Reply via email to