Skip to content

Interactive mode SIGINT tests skipped due to TTY requirement #163

@umair-ably

Description

@umair-ably

Problem

The interactive mode has 4 unit tests for SIGINT/Ctrl+C handling that are it.skip/describe.skip because they are fundamentally unreliable with piped stdio:

  • Ctrl+C on empty prompt
  • Ctrl+C with partial command input
  • Ctrl+C during command execution (exit code 130)
  • Ctrl+C on empty prompt (direct spawn variant)

Root cause: Node.js readline's SIGINT handler only fires when connected to a real TTY. When tests spawn the CLI with stdio: "pipe" (as unit/integration tests do), the signal is never delivered to readline, making these tests permanently flaky — not intermittently flaky.

This is a Node.js limitation, not a bug in the CLI code.

Expected outcome

These tests should run reliably in a real pseudo-terminal environment, verifying that interactive mode handles Ctrl+C correctly in all scenarios.

Metadata

Metadata

Assignees

No one assigned

    Labels

    testsTest related

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions