29 lines
799 B
Python
29 lines
799 B
Python
|
|
"""Live integration test for ClaudeCodeAdapter.
|
||
|
|
|
||
|
|
Skipped unless the ``claude`` CLI is available on PATH.
|
||
|
|
"""
|
||
|
|
|
||
|
|
import shutil
|
||
|
|
|
||
|
|
import pytest
|
||
|
|
|
||
|
|
from markitect.llm.claude_code import ClaudeCodeAdapter
|
||
|
|
from markitect.prompts.execution.models import RunConfig, LLMResponse
|
||
|
|
|
||
|
|
|
||
|
|
pytestmark = pytest.mark.skipif(
|
||
|
|
shutil.which("claude") is None,
|
||
|
|
reason="claude CLI not found on PATH",
|
||
|
|
)
|
||
|
|
|
||
|
|
|
||
|
|
class TestClaudeCodeLive:
|
||
|
|
def test_simple_completion(self):
|
||
|
|
adapter = ClaudeCodeAdapter()
|
||
|
|
config = RunConfig(timeout_seconds=60, max_tokens=50)
|
||
|
|
resp = adapter.execute_prompt("Reply with exactly: PONG", config)
|
||
|
|
|
||
|
|
assert isinstance(resp, LLMResponse)
|
||
|
|
assert len(resp.content.strip()) > 0
|
||
|
|
assert resp.metadata["provider"] == "claude-code"
|