Skip to content

feat(e2e): add interactive TTY mode with expectrl for stdin testing#120

Closed
branchseer wants to merge 2 commits intomainfrom
feat/interactive-tty-e2e
Closed

feat(e2e): add interactive TTY mode with expectrl for stdin testing#120
branchseer wants to merge 2 commits intomainfrom
feat/interactive-tty-e2e

Conversation

@branchseer
Copy link
Copy Markdown
Member

Add support for interactive TTY mode in e2e test runner using expectrl
crate. This enables tests to simulate interactive stdin input through
a PTY pseudo-terminal.

Key changes:

  • Modified Step enum: stdin: Strinteractive: bool
  • Added run_interactive_step function using sync expectrl with spawn_blocking
  • Implemented [write-stdin:...] protocol for writing to stdin
  • Empty content [write-stdin:] signals EOF (sends Ctrl-D)
  • Updated stdin-passthrough fixture to use new protocol
  • Created echo-stdin.js script that verifies TTY mode

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

Copy link
Copy Markdown
Member Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@branchseer branchseer force-pushed the feat/interactive-tty-e2e branch from 9aa929d to 96bc4c8 Compare January 21, 2026 04:30
@branchseer branchseer marked this pull request as ready for review January 21, 2026 04:35
@branchseer branchseer force-pushed the feat/interactive-tty-e2e branch 4 times, most recently from 520efb1 to 04d9372 Compare January 21, 2026 05:25
Add support for interactive TTY mode in e2e test runner using expectrl
crate. This enables tests to simulate interactive stdin input through
a PTY pseudo-terminal.

Key changes:
- Modified Step enum: `stdin: Str` → `interactive: bool`
- Added run_interactive_step function using sync expectrl with spawn_blocking
- Implemented [write-stdin:...] protocol for writing to stdin
- Empty content [write-stdin:] signals EOF (sends Ctrl-D)
- Updated stdin-passthrough fixture to use new protocol
- Created echo-stdin.js script that verifies TTY mode

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@branchseer branchseer force-pushed the feat/interactive-tty-e2e branch from 04d9372 to 9ea3b4a Compare January 21, 2026 05:38
@branchseer branchseer marked this pull request as draft January 23, 2026 12:26
@branchseer branchseer closed this Mar 13, 2026
@branchseer branchseer deleted the feat/interactive-tty-e2e branch March 13, 2026 06:20
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.

1 participant