Files
cleveragents-core/features/tui_prompt_textarea.feature
T
HAL9000 7523a50db8
CI / push-validation (pull_request) Successful in 24s
CI / helm (pull_request) Successful in 32s
CI / build (pull_request) Successful in 3m53s
CI / lint (pull_request) Successful in 4m4s
CI / quality (pull_request) Successful in 4m25s
CI / typecheck (pull_request) Successful in 4m33s
CI / security (pull_request) Successful in 4m45s
CI / integration_tests (pull_request) Successful in 6m42s
CI / e2e_tests (pull_request) Successful in 7m10s
CI / unit_tests (pull_request) Successful in 7m35s
CI / docker (pull_request) Successful in 1m29s
CI / coverage (pull_request) Successful in 14m7s
CI / status-check (pull_request) Successful in 3s
CI / push-validation (push) Successful in 23s
CI / helm (push) Successful in 28s
CI / build (push) Successful in 3m50s
CI / lint (push) Successful in 3m58s
CI / quality (push) Successful in 4m21s
CI / typecheck (push) Successful in 4m29s
CI / security (push) Successful in 4m38s
CI / integration_tests (push) Successful in 6m39s
CI / e2e_tests (push) Successful in 6m57s
CI / unit_tests (push) Successful in 7m24s
CI / docker (push) Successful in 1m29s
CI / coverage (push) Successful in 13m59s
CI / status-check (push) Successful in 3s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (push) Has been skipped
CI / benchmark-regression (pull_request) Successful in 1h4m50s
CI / benchmark-publish (push) Successful in 1h16m58s
refactor(tui): PromptInput uses TextArea instead of Input
Replaced the PromptInput base widget from textual.widgets.Input to textual.widgets.TextArea and updated related code to use the multi-line TextArea API. This includes switching from .value to .text, adjusting consume_text(), and updating all callers and tests accordingly. Also added UI test coverage for multi-line input, including new feature and steps files.

ISSUES CLOSED: #10410
2026-04-22 14:06:42 +00:00

38 lines
1.6 KiB
Gherkin

Feature: PromptInput uses multi-line TextArea widget
The PromptInput widget must use a multi-line TextArea widget (not a
single-line Input widget) to enable multi-line prompt composition.
Background:
Given the prompt module is loaded with a mocked TextArea
Scenario: PromptInput base class is TextArea not Input
Then the PromptInput base class should be the mocked TextArea
Scenario: PromptInput exposes a text property not value
When I create a PromptInput instance
Then the PromptInput instance should have a text attribute
Scenario: consume_text returns the current text content
When I create a PromptInput instance
And I set the PromptInput text to "hello world"
And I call consume_text on the PromptInput
Then the PromptSubmitted text should be "hello world"
Scenario: consume_text clears the text after consuming
When I create a PromptInput instance
And I set the PromptInput text to "some prompt"
And I call consume_text on the PromptInput
Then the PromptInput text should be empty
Scenario: consume_text supports multi-line text
When I create a PromptInput instance
And I set the PromptInput text to "line one\nline two\nline three"
And I call consume_text on the PromptInput
Then the PromptSubmitted text should be "line one\nline two\nline three"
Scenario: PromptInput fallback uses text attribute when TextArea unavailable
Given the prompt module is loaded without textual
When I create a PromptInput instance from the fallback
Then the fallback PromptInput instance should have a text attribute
And the fallback PromptInput text should be empty string