LearnNewsExamplesServices
Frontmatter
id8607
titleAdvanced Fragment Lifecycle Testing (Moves & Nesting)
stateClosed
labels
aitestingcore
assigneestobiu
createdAtJan 13, 2026, 5:37 PM
updatedAtJan 13, 2026, 8:42 PM
githubUrlhttps://github.com/neomjs/neo/issues/8607
authortobiu
commentsCount2
parentIssue8601
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 13, 2026, 8:42 PM

Advanced Fragment Lifecycle Testing (Moves & Nesting)

Closed v11.21.0 aitestingcore
tobiu
tobiu commented on Jan 13, 2026, 5:37 PM

Extending the coverage of #8606. Verify complex lifecycle scenarios for Neo.container.Fragment:

  1. Move In: Move a component from a Container into a child Fragment.
  2. Move Out: Move a component from a Fragment into its parent Container.
  3. Cross-Fragment Move: Move a component from Fragment A to Fragment B (siblings).
  4. Nested Moves: Move a component deeper into a nested Fragment hierarchy.
  5. Renderer Parity: Ensure these work identically in DomApiRenderer and StringBasedRenderer (via Unit tests) and visually in Browser (via Component tests).

This will be a sub-issue of Epic #8601.

tobiu added the ai label on Jan 13, 2026, 5:37 PM
tobiu added the testing label on Jan 13, 2026, 5:37 PM
tobiu added the core label on Jan 13, 2026, 5:37 PM
tobiu added parent issue #8601 on Jan 13, 2026, 5:37 PM
tobiu assigned to @tobiu on Jan 13, 2026, 5:40 PM
tobiu referenced in commit eaf3ce0 - "test: Add unit tests for Fragment move deltas (#8607)" on Jan 13, 2026, 7:13 PM
tobiu
tobiu Jan 13, 2026, 7:13 PM

Input from Gemini 3 Pro:

✦ Verified VDOM delta generation for Fragment move operations via new unit tests (test/playwright/unit/vdom/FragmentMoves.spec.mjs).

Results:

  1. Move In: Correctly targets Fragment ID as parent with relative index.
  2. Move Out: Correctly targets physical Container ID with physical index.
  3. Cross-Fragment: Correctly moves between logical Fragment parents.
  4. Nested Moves: Correctly handles moves into deeper Fragment levels.

The Neo.vdom.Helper logic produces deltas that align with the expected DeltaUpdates handling for fragment anchors.

tobiu referenced in commit 80a2b73 - "test: Consolidate DeltaUpdates Fragment tests into single suite (#8607)" on Jan 13, 2026, 8:20 PM
tobiu referenced in commit f32dbf8 - "test: Finalize FragmentLifecycle E2E test suite (#8607)" on Jan 13, 2026, 8:41 PM
tobiu
tobiu Jan 13, 2026, 8:41 PM

Input from Gemini 3 Pro:

✦ Verified comprehensive Fragment lifecycle (Moves, Nested Moves, Cross-Fragment) via test/playwright/component/container/FragmentLifecycle.spec.mjs. All underlying issues in DeltaUpdates (Fragment support, move logic) and App.mjs (moveComponent atomicity) have been resolved. E2E tests pass.

tobiu closed this issue on Jan 13, 2026, 8:42 PM
tobiu referenced in commit 676a499 - "test: Cleanup console logs in FragmentMoves.spec.mjs (#8607)" on Jan 13, 2026, 8:44 PM
tobiu referenced in commit 2adf708 - "test: Keep FragmentDeltaUpdates.spec.mjs as permanent DeltaUpdates test suite (#8607)" on Jan 13, 2026, 8:45 PM