Skip to content

Commit d2a6ad3

Browse files
mpuccioclaude
andcommitted
ITSMFTTracking: add Gate 4 B3.1 ownership/reset/transactional-load acceptance tests
New testGate4B31OwnershipContract.cxx, covering the acceptance criteria the TimeFrame/LegacyTrackerScratch<NLayers> split's design requires and that were not already incidental coverage elsewhere: 1. resetScratch() clears scratch-owned state only; a populated TimeFrame's CommonTracks/vertices survive untouched. 2. resetTimeFrameEvent() -- the helper ITSMFTTrackingInterface<NLayers>:: resetEvent() trivially wraps -- clears both owners. 3. Two scratches (<7>, <10>) bound to one shared TimeFrame: resetting one never touches the other scratch or the shared frame. 4. An allocation failure injected into the scratch-side legacy backfill staging, after the TimeFrame-side normalized decode has already succeeded, leaves both live owners exactly at their pre-load state. 5. Compile-time proof (static_assert) that TimeFrame is the plain, non-templated owner this slice introduced, not a surviving TimeFrame<NLayers> template. 6. mPropagatorDevice, relocated unchanged onto TimeFrame, remains inert through the base class's own getDevicePropagator()/ setDevicePropagator() hooks. Registered as gate4-b31-ownership-contract in test/CMakeLists.txt. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent ff565ea commit d2a6ad3

2 files changed

Lines changed: 420 additions & 0 deletions

File tree

Detectors/ITSMFT/common/tracking/test/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,12 @@ o2_add_test(timeframe-covariance-lifecycle
257257
LABELS "itsmft;tracking"
258258
PUBLIC_LINK_LIBRARIES O2::ITSMFTTracking O2::MFTTracking)
259259

260+
o2_add_test(gate4-b31-ownership-contract
261+
SOURCES testGate4B31OwnershipContract.cxx
262+
COMPONENT_NAME itsmft-tracking
263+
LABELS "itsmft;tracking"
264+
PUBLIC_LINK_LIBRARIES O2::ITSMFTTracking O2::MFTTracking O2::DetectorsBase)
265+
260266
o2_add_test(catracker-failure-contract
261267
SOURCES testCATrackerFailureContract.cxx
262268
COMPONENT_NAME itsmft-tracking

0 commit comments

Comments
 (0)