vibe/tests/snapshots/test_ui_snapshot_modes.py
Quentin 5d2e01a6d7
v2.3.0 (#429)
Co-authored-by: Carlo <carloantonio.patti@mistral.ai>
Co-authored-by: Mathias Gesbert <mathias.gesbert@mistral.ai>
Co-authored-by: Clement Sirieix <clem.sirieix@gmail.com>
Co-authored-by: Michel Thomazo <michel.thomazo@mistral.ai>
Co-authored-by: Clément Drouin <clement.drouin@mistral.ai>
Co-authored-by: Vincent Guilloux <vincent.guilloux@mistral.ai>
Co-authored-by: Thomas Kenbeek <thomas.kenbeek@mistral.ai>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
2026-02-27 17:31:58 +01:00

88 lines
2.9 KiB
Python

from __future__ import annotations
from textual.pilot import Pilot
from tests.snapshots.snap_compare import SnapCompare
def test_snapshot_default_mode(snap_compare: SnapCompare) -> None:
"""Test that default mode is displayed correctly at startup."""
async def run_before(pilot: Pilot) -> None:
await pilot.pause(0.1)
assert snap_compare(
"base_snapshot_test_app.py:BaseSnapshotTestApp",
terminal_size=(120, 36),
run_before=run_before,
)
def test_snapshot_cycle_to_plan_mode(snap_compare: SnapCompare) -> None:
"""Test that shift+tab cycles from default to plan mode."""
async def run_before(pilot: Pilot) -> None:
await pilot.pause(0.1)
await pilot.press("shift+tab") # default -> plan
await pilot.app.workers.wait_for_complete()
await pilot.pause(0.1)
assert snap_compare(
"base_snapshot_test_app.py:BaseSnapshotTestApp",
terminal_size=(120, 36),
run_before=run_before,
)
def test_snapshot_cycle_to_accept_edits_mode(snap_compare: SnapCompare) -> None:
"""Test that shift+tab cycles from plan to accept edits mode."""
async def run_before(pilot: Pilot) -> None:
await pilot.pause(0.1)
await pilot.press("shift+tab") # default -> plan
await pilot.press("shift+tab") # plan -> accept edits
await pilot.app.workers.wait_for_complete()
await pilot.pause(0.1)
assert snap_compare(
"base_snapshot_test_app.py:BaseSnapshotTestApp",
terminal_size=(120, 36),
run_before=run_before,
)
def test_snapshot_cycle_to_auto_approve_mode(snap_compare: SnapCompare) -> None:
"""Test that shift+tab cycles to auto approve mode."""
async def run_before(pilot: Pilot) -> None:
await pilot.pause(0.1)
await pilot.press("shift+tab") # default -> plan
await pilot.press("shift+tab") # plan -> accept edits
await pilot.press("shift+tab") # accept edits -> auto approve
await pilot.app.workers.wait_for_complete()
await pilot.pause(0.1)
assert snap_compare(
"base_snapshot_test_app.py:BaseSnapshotTestApp",
terminal_size=(120, 36),
run_before=run_before,
)
def test_snapshot_cycle_wraps_to_default(snap_compare: SnapCompare) -> None:
"""Test that shift+tab cycles back to default mode after auto approve."""
async def run_before(pilot: Pilot) -> None:
await pilot.pause(0.1)
await pilot.press("shift+tab") # default -> plan
await pilot.press("shift+tab") # plan -> accept edits
await pilot.press("shift+tab") # accept edits -> auto approve
await pilot.press("shift+tab") # auto approve -> default (wrap)
await pilot.app.workers.wait_for_complete()
await pilot.pause(0.1)
assert snap_compare(
"base_snapshot_test_app.py:BaseSnapshotTestApp",
terminal_size=(120, 36),
run_before=run_before,
)