"""Pytest configuration and shared fixtures for Clover test suite.""" import sys import os # Ensure project root is on path sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) import pytest @pytest.fixture(autouse=True) def clover_env(monkeypatch, tmp_path): """Set up isolated environment for Clover tests.""" monkeypatch.setenv("CLOVER_TIMEOUT", "300") monkeypatch.setenv("CLOVER_THREADS", "5") monkeypatch.setenv("CLOVER_MODEL", "qwen3-coder:30b") monkeypatch.setenv("CLOVER_BASE_URL", "http://localhost:11434") monkeypatch.delenv("CLOVER_API_KEY", raising=False) monkeypatch.delenv("CLOVER_DEBUG", raising=False) monkeypatch.delenv("CLOVER_VERBOSE", raising=False) monkeypatch.delenv("CLOVER_CACHE_ENABLED", raising=False) monkeypatch.delenv("CLOVER_CACHE_SIZE", raising=False) monkeypatch.delenv("CLOVER_ALLOW_COMMAND_EXECUTION", raising=False) monkeypatch.delenv("CLOVER_REQUIRE_CONFIRMATION", raising=False) monkeypatch.delenv("CLOVER_SSL_VERIFY", raising=False) monkeypatch.delenv("CLOVER_SUMMARY_FILE", raising=False) monkeypatch.delenv("CLOVER_STRUCTURE_FILE", raising=False) monkeypatch.delenv("CLOVER_MAX_HISTORY_MESSAGES", raising=False) monkeypatch.delenv("CLOVER_MAX_HISTORY_TOKENS", raising=False) monkeypatch.delenv("CLOVER_MAX_RETRIES", raising=False) monkeypatch.delenv("CLOVER_RETRY_BASE_DELAY", raising=False) return tmp_path