Co-authored-by: Clément Sirieix <clement.sirieix@mistral.ai>
Co-authored-by: Guillaume LE GOFF <guillaume.lgf@gmail.com>
Co-authored-by: Hdandria <henri.dandria@mistral.ai>
Co-authored-by: Ivana Dunisijevic <ivana.dunisijevic@mistral.ai>
Co-authored-by: Jean Burellier <sheplu@users.noreply.github.com>
Co-authored-by: Mathias Gesbert <mathias.gesbert@mistral.ai>
Co-authored-by: Mert Unsal <mert.unsal@mistral.ai>
Co-authored-by: Michel Thomazo <51709227+michelTho@users.noreply.github.com>
Co-authored-by: Paul VEZIA <166131032+le-codeur-rapide@users.noreply.github.com>
Co-authored-by: Pierre Rossinès <pierre.rossines@mistral.ai>
Co-authored-by: Val <102326092+vdeva@users.noreply.github.com>
Co-authored-by: Vincent G <10739306+VinceOPS@users.noreply.github.com>
Co-authored-by: renovate-mistral[bot] <253709520+renovate-mistral[bot]@users.noreply.github.com>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
Clément Drouin 2026-06-19 11:01:24 +02:00 committed by GitHub
parent 564a14365e
commit 6bedf271ce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
223 changed files with 10533 additions and 6947 deletions

View file

@ -0,0 +1,79 @@
from __future__ import annotations
from textual.pilot import Pilot
from tests.conftest import build_test_agent_loop
from tests.mock.utils import mock_llm_chunk
from tests.snapshots.base_snapshot_test_app import BaseSnapshotTestApp, default_config
from tests.snapshots.snap_compare import SnapCompare
from tests.stubs.fake_backend import FakeBackend
from vibe.cli.textual_ui.widgets.messages import ReasoningMessage
LONG_LINE = (
"The history of computing stretches back thousands of years from the abacus"
" through Charles Babbage's Analytical Engine to Alan Turing's theoretical"
" foundations and the first electronic computers like ENIAC and UNIVAC which"
" filled entire rooms and consumed enormous amounts of power while performing"
" calculations that today's pocket calculators handle effortlessly and this"
" remarkable progression continued through the invention of the transistor"
" and integrated circuit leading to the personal computer revolution of the"
" 1980s and the explosive growth of the internet in the 1990s transforming"
" every aspect of modern life from communication to commerce to entertainment."
)
class AssistantLongLineApp(BaseSnapshotTestApp):
def __init__(self) -> None:
fake_backend = FakeBackend(
mock_llm_chunk(
content=LONG_LINE, prompt_tokens=10_000, completion_tokens=5_000
)
)
super().__init__(backend=fake_backend)
def test_snapshot_right_padding_assistant_message(snap_compare: SnapCompare) -> None:
async def run_before(pilot: Pilot) -> None:
await pilot.press(*"Tell me about computing")
await pilot.press("enter")
await pilot.pause(0.4)
assert snap_compare(
"test_ui_snapshot_right_padding.py:AssistantLongLineApp",
terminal_size=(120, 36),
run_before=run_before,
)
class ReasoningLongLineApp(BaseSnapshotTestApp):
def __init__(self) -> None:
config = default_config()
fake_backend = FakeBackend(
chunks=[
mock_llm_chunk(content="", reasoning_content=LONG_LINE),
mock_llm_chunk(content="The answer is 42."),
]
)
super().__init__(config=config)
self.agent_loop = build_test_agent_loop(
config=config,
agent_name=self._current_agent_name,
enable_streaming=True,
backend=fake_backend,
)
def test_snapshot_right_padding_reasoning(snap_compare: SnapCompare) -> None:
async def run_before(pilot: Pilot) -> None:
await pilot.press(*"Think hard")
await pilot.press("enter")
await pilot.pause(0.5)
reasoning_msg = pilot.app.query_one(ReasoningMessage)
await pilot.click(reasoning_msg)
await pilot.pause(0.1)
assert snap_compare(
"test_ui_snapshot_right_padding.py:ReasoningLongLineApp",
terminal_size=(120, 36),
run_before=run_before,
)