litellm/tests/e2e/claude_code/passthrough/test_bedrock_converse.py
ryan-crabbe-berri 0ae55bdf7a
test(e2e): tag claude_code cells with Subject metadata and record CLI driver steps (#44961)
* test(e2e): add enum values, auto-discovering label gates and secret hiding for e2e metadata

* test(e2e): tag claude_code tests with Subject metadata and record CLI driver steps

* docs(e2e): name every markerless harness test file that carries no Subject

* test(e2e): keep the step discovery comprehensions to one for clause

* test(e2e): decorate run_claude directly so the label gate discovers its step
2026-10-07 10:31:54 -07:00

37 lines
1.4 KiB
Python

"""passthrough x Bedrock (Converse).
Structurally not applicable. In bedrock mode the `claude` CLI speaks
only the InvokeModel wire (`/model/{id}/invoke-with-response-stream`);
it has no Converse-wire client, so there is no Claude Code traffic a
Converse passthrough could serve. LiteLLM's `/bedrock` route does
accept `/model/{id}/converse-stream`, but exercising it would test a
wire no Claude Code user can produce, which is out of scope for this
matrix.
The (feature, provider) for this cell is inferred from the file path by
`tests/e2e/claude_code/conftest.py`:
tests/e2e/claude_code/passthrough/test_bedrock_converse.py
^^^^^^^^^^^ ^^^^^^^^^^^^^^^^
feature_id provider
"""
from __future__ import annotations
from e2e_metadata import Domain, Subject, meta
@meta(Subject(domain=Domain.PASSTHROUGH))
def test_passthrough_bedrock_converse(compat_result):
"""Report not_applicable: Claude Code has no Converse-wire mode."""
compat_result.set(
{
"status": "not_applicable",
"reason": (
"Claude Code's bedrock mode speaks only the InvokeModel wire "
"(/model/{id}/invoke-with-response-stream); it has no "
"Converse-wire client, so there is no Claude Code surface "
"for Converse passthrough."
),
}
)