vibe/tests/cli/test_initial_agent_name.py
Mathias Gesbert cf3f4ca58f
v2.11.1 (#721)
Co-authored-by: Clément Drouin <clement.drouin@mistral.ai>
Co-authored-by: Clément Sirieix <clement.sirieix@mistral.ai>
Co-authored-by: Guillaume LE GOFF <guillaume.lgf@gmail.com>
Co-authored-by: Mert Unsal <mertunsal1905@gmail.com>
Co-authored-by: Michel Thomazo <51709227+michelTho@users.noreply.github.com>
Co-authored-by: Quentin <quentin.torroba@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: maximevoisin-pm <maxime.voisin@mistral.ai>
Co-authored-by: Mistral Vibe <vibe@mistral.ai>
2026-05-27 17:10:40 +02:00

53 lines
1.9 KiB
Python

from __future__ import annotations
import argparse
from vibe.cli.cli import get_initial_agent_name
from vibe.core.agents.models import BuiltinAgentName
from vibe.core.config import VibeConfig
def _make_args(*, agent: str | None, prompt: str | None) -> argparse.Namespace:
return argparse.Namespace(agent=agent, prompt=prompt)
def test_uses_args_agent_when_provided() -> None:
config = VibeConfig.model_construct(default_agent=BuiltinAgentName.PLAN)
args = _make_args(agent="accept-edits", prompt=None)
assert get_initial_agent_name(args, config) == "accept-edits"
def test_falls_back_to_config_default_agent_when_args_agent_is_none() -> None:
config = VibeConfig.model_construct(default_agent=BuiltinAgentName.PLAN)
args = _make_args(agent=None, prompt=None)
assert get_initial_agent_name(args, config) == BuiltinAgentName.PLAN
def test_defaults_to_default_when_unset_in_config_and_args() -> None:
config = VibeConfig.model_construct()
args = _make_args(agent=None, prompt=None)
assert get_initial_agent_name(args, config) == BuiltinAgentName.DEFAULT
def test_programmatic_mode_falls_back_to_default_agent() -> None:
config = VibeConfig.model_construct(default_agent=BuiltinAgentName.DEFAULT)
args = _make_args(agent=None, prompt="hello")
assert get_initial_agent_name(args, config) == BuiltinAgentName.DEFAULT
def test_programmatic_mode_uses_config_default_agent_when_args_agent_is_none() -> None:
config = VibeConfig.model_construct(default_agent=BuiltinAgentName.PLAN)
args = _make_args(agent=None, prompt="hello")
assert get_initial_agent_name(args, config) == BuiltinAgentName.PLAN
def test_programmatic_mode_keeps_explicit_agent_arg() -> None:
config = VibeConfig.model_construct(default_agent=BuiltinAgentName.DEFAULT)
args = _make_args(agent="accept-edits", prompt="hello")
assert get_initial_agent_name(args, config) == "accept-edits"