"""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"
