vibe/tests/test_system_prompt.py
2025-12-10 19:40:14 +01:00

38 lines
1.3 KiB
Python

from __future__ import annotations
import sys
import pytest
from vibe.core.config import VibeConfig
from vibe.core.system_prompt import get_universal_system_prompt
from vibe.core.tools.manager import ToolManager
def test_get_universal_system_prompt_includes_windows_prompt_on_windows(
monkeypatch: pytest.MonkeyPatch,
) -> None:
monkeypatch.setattr(sys, "platform", "win32")
monkeypatch.setenv("COMSPEC", "C:\\Windows\\System32\\cmd.exe")
config = VibeConfig(
system_prompt_id="tests",
include_project_context=False,
include_prompt_detail=True,
include_model_info=False,
include_commit_signature=False,
)
tool_manager = ToolManager(config)
prompt = get_universal_system_prompt(tool_manager, config)
assert "You are Vibe, a super useful programming assistant." in prompt
assert (
"The operating system is Windows with shell `C:\\Windows\\System32\\cmd.exe`"
in prompt
)
assert "DO NOT use Unix commands like `ls`, `grep`, `cat`" in prompt
assert "Use: `dir` (Windows) for directory listings" in prompt
assert "Use: backslashes (\\\\) for paths" in prompt
assert "Check command availability with: `where command` (Windows)" in prompt
assert "Script shebang: Not applicable on Windows" in prompt