Skip to content

Document and verify real Clean Up execution preview for independent file/step selection - #1463

Closed
carstenartur with Copilot wants to merge 3 commits into
mainfrom
copilot/document-cleanup-preview
Closed

Document and verify real Clean Up execution preview for independent file/step selection#1463
carstenartur with Copilot wants to merge 3 commits into
mainfrom
copilot/document-cleanup-preview

Conversation

Copilot AI commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

The issue was that Help and tests covered only configuration-tab sample previews, not the real LTK execution preview shown by Source → Clean Up.... This PR adds deterministic SWTBot coverage and Help artifacts for independent per-step/per-file selection behavior, while keeping coordinated multi-file atomic migrations explicitly out of scope.

  • Execution behavior: JFace cleanup option wiring + step semantics

    • Exposed JFACE_CLEANUP master option in the JFace cleanup tab and wired monitor/viewer-sorter/image-DPI options as slave preferences.
    • Switched JFace step descriptions from a single aggregated string to one user-facing description per enabled migration.
    • Labeled TextEditGroups with migration-specific user text (SubProgressMonitor, ViewerSorter, ImageDataProvider) instead of generic/internal identifiers.
    • Resolved step labels lazily from NLS messages to avoid enum static-init timing issues.
  • Deterministic SWTBot fixture for real LTK preview

    • Extended SandboxHelpScreenshotsSWTBotTest with a real cleanup-wizard scenario that:
      • creates deterministic Java fixture sources,
      • opens the real Clean Up wizard preview page,
      • verifies one-file/multi-step preview tree labels,
      • selects different steps and asserts diff viewer content changes,
      • deselects one step and verifies only selected edits are applied,
      • runs package-level cleanup across multiple files, deselects one file, and verifies selected file changes while deselected file remains byte-identical,
      • performs undo and verifies restoration.
  • Help and screenshot inventory

    • Added canonical execution-preview screenshots for:
      • single file with multiple cleanup steps,
      • selected-step diff,
      • multi-file independent selection.
    • Updated JFace usage Help to explain:
      • config-tab preview vs real execution preview,
      • independent local deselection behavior,
      • separation from coordinated multi-file atomic migrations.
    • Added a shared conceptual Help page (cleanup-preview.html) and linked it from relevant cleanup usage pages (JFace/JUnit/Int-to-Enum).
    • Updated structural Help checks to require the new screenshots and validate cross-bundle /topic/... links.
  • Targeted regression coverage

    • Added JFaceCleanUpDescriptionsTest to verify:
      • one description per enabled migration,
      • master-gate behavior (JFACE_CLEANUP) controls execution requirements and exposed steps.
@Override
public String[] getStepDescriptions() {
    List<String> result = new ArrayList<>();
    if (isEnabled(JFACE_CLEANUP)) {
        computeFixSet().stream()
            .map(JfaceCleanUpFixCore::getStepDescription)
            .forEach(result::add);
    }
    return result.toArray(new String[0]);
}

Copilot AI and others added 2 commits August 10, 2026 00:01
Co-authored-by: carstenartur <3164220+carstenartur@users.noreply.github.com>
Co-authored-by: carstenartur <3164220+carstenartur@users.noreply.github.com>
Copilot AI changed the title [WIP] Document and verify the real cleanup preview for local and independent changes Document and verify real Clean Up execution preview for independent file/step selection Aug 10, 2026
Copilot AI requested a review from carstenartur August 10, 2026 00:06

Copy link
Copy Markdown
Owner

Superseded by #1464. The consolidated PR carries the real LTK preview behavior forward and combines it with coordinated multi-file atomic preview support, product smoke coverage, Help artifacts, and release-gate verification. Closing this predecessor to avoid parallel conflicting integration branches.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document and verify the real Cleanup preview for local and independent changes

2 participants