test: remove exact duplicate coverage

This commit is contained in:
Erik 2026-08-18 12:36:41 +02:00
parent 9c6b143a03
commit 5fa9933636
7 changed files with 133 additions and 32 deletions

View file

@ -43,7 +43,9 @@ inventory refreshed for Batch G reports:
| Syntax signal | Current count |
|---|---:|
| Tracked/parsed C# test files | 1,256 / 1,256 |
| Attributed test methods (not expanded theory cases) | 11,450 |
| Attributed test methods (not expanded theory cases) | 11,447 |
| Exact duplicate-data rows | 0 |
| Reviewed body-equivalent groups / methods | 11 / 27 |
| Methods containing at least one empty `return;` | 138 |
| Empty-return sites | 143 |
| Direct / same-file-helper prerequisite-return candidates | 2 / 1 |
@ -140,6 +142,7 @@ identifiable in the lane report.
| T-017 Avalonia ownership | reopened and closed in batch D | The full gate exposed the same compositor ownership class between six newer `MainWindowViewTests` facts. Their six named assertion phases now run in one owned Avalonia application session; 25 fresh-process stress iterations and the complete gate pass. |
| T-018 stderr observer race | resolved in R2 | Live reader shares writes/deletes; 25 focused repetitions plus the complete gate. |
| T-019 remaining explicit waits | classified in batch H; nine fixed-delay negative oracles need cleanup | Five of the 38 methods are deterministic cancellation stubs, not wall-clock tests. Preserve four intentional real-time contracts and bounded integration polling; replace the nine tests that infer “still blocked” from a fixed delay with observable synchronization state. |
| T-020 exact duplicate bodies/data | resolved in batch K | Four redundant executions were removed. The remaining 11 body-equivalent groups are intentionally split theories with disjoint, meaningfully named datasets; the inventory enforces zero repeated rows within a theory or across body-equivalent theories. |
## Preserved rationale for removals in batch A
@ -538,3 +541,41 @@ Verification before the complete gate:
The no-retry complete hermetic Release gate passed 14,391/14,391 with zero
skips or failures across all 12 test assemblies.
## Batch K duplicate-body and theory-row truth
The inventory now fingerprints every attributed method body and compares
`InlineData` case-sensitively both within a theory and across theories with an
identical body. Case sensitivity prevents legitimate inputs such as `iris` /
`IRIS`, `Sunny` / `SUNNY`, and `0x` / `0X` from being mislabeled as duplicates.
The initial 14 body-equivalent groups contained four redundant executions:
- `VulkanCapabilityReportContractTests.TheReportFileNameIsTheOneTheWorkflowPathNames`
duplicated the report-name assertion in `VulkanCapabilityGateTests` and did
not inspect the workflow it named. The retained fact is now
`TheReportFileNameRemainsStableForDiagnosticsAutomation`.
- `MotionInterpreterDoMotionFamilyTests.StopCompletely_NullPhysicsObj_Returns8`
was byte-equivalent to the more descriptive
`MotionInterpreterTests.StopCompletely_NullPhysicsObj_ReturnsNoPhysicsObject`.
- `CastSpellTests.ParseMagicUpdateSpell_RoundTrip` duplicated the same parser
contract under `GameEventDispatcherTests`, the parser's durable owner.
- retail motion row `(0x0150, 0x10000150u)` appeared in both the recall-command
theory and the generic anchor theory. It remains in the specifically named
recall contract.
The other 11 groups are not useless duplicates. They deliberately reuse a
small assertion body while separating disjoint datasets by meaning: command
resolution, command argument shapes, valid chat tags, retail string escapes,
weenie error-message evidence, help text, invalid chargen ranges, ACE/retail
motion tables, character-option oracle sources, and environment-sound gaps.
Combining those rows would erase useful failure names without reducing the
assertion mechanism.
After cleanup the inventory reports 11,447 attributed methods, zero duplicate
rows, and 11 reviewed body-equivalent groups containing 27 methods. Verification
for the changed owners passes 46 App, 154 Core, and 32 Core.Net cases. The
complete 44-project Release build reports zero warnings and zero errors. The
no-retry complete hermetic Release gate passed 14,387/14,387 with zero skips or
failures across all 12 test assemblies. The four-case reduction is exactly the
three duplicate facts and one duplicate theory row removed above.