fix(tui): resolve lint and AmbiguousStep errors in TuiMaterializer
CI / load-versions (push) Successful in 16s
CI / push-validation (push) Successful in 28s
CI / build (push) Successful in 33s
CI / lint (push) Successful in 50s
CI / typecheck (push) Successful in 1m0s
CI / quality (push) Successful in 1m8s
CI / security (push) Successful in 1m17s
CI / helm (push) Successful in 39s
CI / unit_tests (push) Successful in 6m53s
CI / docker (push) Successful in 1m55s
CI / integration_tests (push) Successful in 10m43s
CI / coverage (push) Successful in 13m43s
CI / status-check (push) Successful in 3s
CI / load-versions (pull_request) Successful in 13s
CI / push-validation (pull_request) Successful in 34s
CI / lint (pull_request) Successful in 48s
CI / quality (pull_request) Successful in 54s
CI / typecheck (pull_request) Successful in 59s
CI / security (pull_request) Successful in 1m12s
CI / build (pull_request) Successful in 51s
CI / helm (pull_request) Successful in 58s
CI / unit_tests (pull_request) Successful in 6m37s
CI / integration_tests (pull_request) Successful in 10m35s
CI / benchmark-publish (push) Has been cancelled
CI / benchmark-regression (push) Has been cancelled
CI / docker (pull_request) Failing after 13m18s
CI / coverage (pull_request) Failing after 28m20s
CI / status-check (pull_request) Has been cancelled

- Fix ruff format violations: collapse list comprehension in
  materializer.py, collapse function signature, collapse decorators
  and assertion in tui_materializer_steps.py, remove trailing
  whitespace in vulture_whitelist.py
- Remove duplicate Behave step definitions from tui_materializer_steps.py
  that conflicted with output_rendering_steps.py and
  project_commands_coverage_steps.py: create status handle,
  create code handle, close panel handle, close status handle,
  no error should be raised
- Rename render_element_for_tui step texts to avoid conflict with
  tui_first_run_steps.py: rendered text should contain/be empty ->
  render output should contain/be empty
- Update tui_materializer.feature to use renamed step texts and
  replace no error should be raised with materializer still running

ISSUES CLOSED: #11164
This commit was merged in pull request #11164.
This commit is contained in:
2026-06-11 13:42:30 -04:00
committed by Forgejo
parent 10b9fb941f
commit 5e71221f61
4 changed files with 34 additions and 73 deletions
+25 -25
View File
@@ -31,7 +31,7 @@ Feature: TUI Materializer
Scenario: TuiMaterializer implements on_session_begin
When I create a TuiMaterializer without a callback
And I call on_session_begin with a mock session
Then no error should be raised
Then the materializer should still be running
Scenario: TuiMaterializer emits element_created event for panel
When I create a TuiMaterializer without a callback
@@ -141,72 +141,72 @@ Feature: TUI Materializer
Scenario: render_element_for_tui renders Panel with title and entries
When I render a Panel element with title "Info" and entry "key" "value"
Then the rendered text should contain "Info"
And the rendered text should contain "key"
And the rendered text should contain "value"
Then the render output should contain "Info"
And the render output should contain "key"
And the render output should contain "value"
Scenario: render_element_for_tui renders Table with columns and rows
When I render a Table element with title "Data" and column "Name"
Then the rendered text should contain "Data"
And the rendered text should contain "Name"
Then the render output should contain "Data"
And the render output should contain "Name"
Scenario: render_element_for_tui renders StatusMessage ok level
When I render a StatusMessage element with level "ok" and message "Success"
Then the rendered text should contain "ok"
And the rendered text should contain "Success"
Then the render output should contain "ok"
And the render output should contain "Success"
Scenario: render_element_for_tui renders StatusMessage error level
When I render a StatusMessage element with level "error" and message "Failed"
Then the rendered text should contain "error"
And the rendered text should contain "Failed"
Then the render output should contain "error"
And the render output should contain "Failed"
Scenario: render_element_for_tui renders indeterminate ProgressIndicator
When I render an indeterminate ProgressIndicator with label "Thinking"
Then the rendered text should contain "Thinking"
Then the render output should contain "Thinking"
Scenario: render_element_for_tui renders determinate ProgressIndicator
When I render a determinate ProgressIndicator with label "Loading" current 5 total 10
Then the rendered text should contain "Loading"
And the rendered text should contain "50%"
Then the render output should contain "Loading"
And the render output should contain "50%"
Scenario: render_element_for_tui renders Tree with root and children
When I render a Tree element with root "root" and child "child1"
Then the rendered text should contain "root"
And the rendered text should contain "child1"
Then the render output should contain "root"
And the render output should contain "child1"
Scenario: render_element_for_tui renders CodeBlock with language
When I render a CodeBlock element with language "python" and content "x = 1"
Then the rendered text should contain "python"
And the rendered text should contain "x = 1"
Then the render output should contain "python"
And the render output should contain "x = 1"
Scenario: render_element_for_tui renders DiffBlock with hunks
When I render a DiffBlock element with file_a "old.py" and file_b "new.py"
Then the rendered text should contain "old.py"
And the rendered text should contain "new.py"
Then the render output should contain "old.py"
And the render output should contain "new.py"
Scenario: render_element_for_tui renders Separator line style
When I render a Separator element with style "line"
Then the rendered text should contain "-"
Then the render output should contain "-"
Scenario: render_element_for_tui renders Separator blank style
When I render a Separator element with style "blank"
Then the rendered text should be empty
Then the render output should be empty
Scenario: render_element_for_tui renders Separator double style
When I render a Separator element with style "double"
Then the rendered text should contain "="
Then the render output should contain "="
Scenario: render_element_for_tui renders ActionHint with commands
When I render an ActionHint element with command "agents plan list"
Then the rendered text should contain "agents plan list"
Then the render output should contain "agents plan list"
Scenario: render_element_for_tui renders TextBlock content
When I render a TextBlock element with content "Hello world"
Then the rendered text should contain "Hello world"
Then the render output should contain "Hello world"
Scenario: render_element_for_tui renders TextBlock with indent
When I render a TextBlock element with content "indented" and indent 4
Then the rendered text should contain " indented"
Then the render output should contain " indented"
# ── A2A event routing ─────────────────────────────────────────────────────