You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Migrated the remaining workspace CLI test invocation helpers to the shared helper, including setup, update, repository URL, status-manifest, agent-brief, and downstream imports.
Preserved terminal-output behavior in the shared helper and retained explicit environment overrides.
The follow-up commit ("test: consolidate remaining workspace CLI helpers") addresses the main finding well - test_workspace_checks.py, test_workspace_repository_url.py, test_workspace_status_manifest.py, test_workspace_setup.py, test_workspace_update.py, test_manifest_input_errors.py, and a few others now correctly use the shared invoke_engine helper with no local duplicate harness code.
However, the original finding - the new file duplicating TerminalStringIO instead of hoisting it into workspace_cli_helpers.py - is only partially resolved. workspace_cli_helpers.py now does define the canonical TerminalStringIO class, which is great, but three files still define their own redundant local copy of the identical class instead of importing it, even though all three already import invoke_engine from that same module in the same import block:
Simple fix: drop the local class TerminalStringIO(io.StringIO): ... in each of these three files and add TerminalStringIO to the existing from base_projects.tests.workspace_cli_helpers import invoke_engine line.
(test_engine.py also defines its own copy, but that one doesn't use invoke_engine at all, so it's out of scope for this consolidation.)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Issue
Fixes #2308
Validation
base_projectstests: 389 passed, 64 subtests passed.git diff --checkpassed.Demo Impact
None. No demo behavior changed.
Docs and AI Context
No
.ai-context/update is needed for this test-only refactor.