import os import tempfile from unittest.mock import MagicMock import pytest @pytest.fixture def temp_dir(): with tempfile.TemporaryDirectory() as tmpdir: yield tmpdir @pytest.fixture def mock_api_response(): return { "choices": [{"message": {"role": "assistant", "content": "Test response"}}], "usage": {"prompt_tokens": 10, "completion_tokens": 5, "total_tokens": 15}, } @pytest.fixture def mock_args(): args = MagicMock() args.message = None args.model = None args.api_url = None args.model_list_url = None args.interactive = False args.verbose = False args.no_syntax = False args.include_env = False args.context = None args.api_mode = False return args @pytest.fixture def sample_context_file(temp_dir): context_path = os.path.join(temp_dir, ".rcontext.txt") with open(context_path, "w") as f: f.write("Sample context content\n") return context_path