litellm/tests/test_litellm
yuneng-jiang 3604b600d3
[Infra] Merge internal dev branch with main (#25036)
* fix(proxy): enforce key-level model allowlist for custom auth

custom_auth_run_common_checks only runs common_checks (team/user/project model checks).
Custom auth now also enforces key-level model restrictions via can_key_call_model.

Move the custom-auth key-access regression tests to test_user_api_key_auth.py and keep test_custom_auth_end_user_budget.py focused on end-user budget behavior.

Made-with: Cursor

* fix(proxy): gate custom-auth key model checks behind opt-in

Keep key-level model allowlist enforcement in custom auth behind `custom_auth_run_common_checks` to preserve backwards compatibility, and update tests to verify default non-enforcement and opt-in enforcement behavior.

Made-with: Cursor

* test(proxy): isolate custom auth default check from shared settings state

Patch `proxy_server.general_settings` to an empty dict in the default custom-auth key-access test so it remains deterministic under shared module state.

Made-with: Cursor

* test(proxy): strengthen custom auth post-check assertions

Tighten custom auth regression tests by asserting exact can_key_call_model args and remove an unused common_checks mock from the default behavior path.

Made-with: Cursor

* fix(agentcore): parse A2A JSON-RPC responses in AgentCore provider

* fix(prompt-templates): ensure_alternating_roles handles tool-call chains

* feat(auth): add JWT claim routing overrides for OAuth2 validation

Made-with: Cursor

* docs(auth): document JWT-to-OAuth2 routing overrides

Add generic docs for running JWT and OAuth2 together, including routing_overrides YAML examples and list-based selector behavior for iss/client_id/aud.

Made-with: Cursor

---------

Co-authored-by: Milan <milan@berri.ai>
Co-authored-by: michelligabriele <gabriele.michelli@icloud.com>
2026-04-02 16:38:01 -07:00
..
a2a_protocol
anthropic_interface/exceptions
caching Litellm ishaan march 20 (#24303) 2026-03-21 12:40:11 -07:00
completion_extras feat(openai): round-trip Responses API reasoning_items in chat completions 2026-03-27 20:25:08 +05:30
containers
enterprise Revert "[Fix] Populate _hidden_params.model_id in batch terminal-state shortcut path" 2026-03-13 12:21:39 -07:00
expected_fine_tuning_api refactor: refactor testing 2026-03-28 18:39:32 -07:00
expected_responses_api_request
experimental_mcp_client
google_genai Revert "QA: improve gpt-5.4 code/bugs" 2026-03-13 10:15:47 -07:00
images Root cause fix - migrate all logging update to use 1 function - for centralized kwarg updates (#23659) 2026-03-15 23:21:01 -07:00
integrations Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
interactions [Staging] - Ishaan March 17th (#23903) 2026-03-18 15:09:01 -07:00
litellm_core_utils Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
llms [Infra] Merge internal dev branch with main (#25036) 2026-04-02 16:38:01 -07:00
ocr
passthrough Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
proxy [Infra] Merge internal dev branch with main (#25036) 2026-04-02 16:38:01 -07:00
responses fix: map file_url -> file_id in Responses->Completions translation 2026-03-31 12:59:01 -07:00
router_strategy [Fix] Fix test failures and Docker build from pinned dependency upgrade 2026-04-01 09:43:33 -07:00
router_utils [Fix] Rename test file so router code coverage check detects it 2026-03-30 13:13:41 -07:00
secret_managers
test_router
types feat(fine-tuning): address greptile review feedback (greploop iteration 4) 2026-03-27 20:04:41 +05:30
vector_stores
__init__.py
conftest.py Fix test isolation: clear litellm.callbacks and model_fallbacks between tests 2026-03-15 16:43:15 -07:00
log.txt
readme.md
test_a2a_registry_lookup.py
test_acompletion_session_reuse_e2e.py
test_add_deployment_no_master_key.py
test_aembedding_session_reuse_e2e.py
test_anthropic_beta_headers_filtering.py Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
test_anthropic_skills_transformation.py
test_azure_video_router.py
test_chat_ui_responses_session.py
test_claude_haiku_4_5_config.py
test_claude_opus_4_6_config.py Fix the Pricing changes for claude models 2026-03-27 22:44:40 +05:30
test_constants.py Fix test 2026-03-27 21:21:43 +05:30
test_container_router.py
test_cost_calculation_log_level.py
test_cost_calculator.py Revert "fix(whisper): correct output_cost_per_second pricing and cost calcula…" 2026-03-21 20:44:52 +05:30
test_count_tokens_public_api.py
test_deepseek_model_metadata.py
test_eager_tiktoken_load.py Fix test isolation: run eager tiktoken tests in subprocesses 2026-03-15 17:32:31 -07:00
test_exception_exports.py
test_exception_header_preservation.py
test_exception_mapping_request_attribute.py
test_filter_out_litellm_params.py
test_get_blog_posts.py feat: fetch blog posts from docs RSS feed instead of static JSON on GitHub 2026-03-16 15:55:16 -07:00
test_gpt_image_cost_calculator.py
test_groq_streaming_encoding.py
test_lazy_imports.py
test_litellm_params_reserved_keys.py
test_logging.py
test_lowest_latency_zero_tokens.py
test_main.py Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
test_model_cost_aliases.py [Feat] - Ishaan main merge branch (#23596) 2026-03-14 09:40:00 -07:00
test_model_param_helper.py
test_model_response_normalization.py
test_nested_drop_params.py
test_project_alias_tracking.py feat(proxy): add project_alias tracking through callback metadata pipeline 2026-03-23 10:44:17 -07:00
test_project_tags_pydantic.py
test_redis.py fix(cache): Fix Redis cluster caching (#23480) 2026-03-17 08:32:01 -07:00
test_register_model_custom_pricing.py
test_responses_api_bridge_non_stream.py
test_responses_id_security.py
test_router_google_genai.py
test_router_model_cost_isolation.py
test_router_order_fallback.py Merge pull request #24611 from Sameerlite/Sameerlite/order-fallback2 2026-03-27 20:15:30 +05:30
test_router_per_deployment_num_retries.py
test_router_redis_init.py
test_router_retry_non_retryable_errors.py
test_router_silent_experiment.py Update tests/test_litellm/test_router_silent_experiment.py 2026-03-14 16:47:56 +05:30
test_router.py Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
test_secret_redaction.py fix: add key-name-based secret redaction to catch secrets in config dict dumps 2026-03-21 11:44:49 -07:00
test_service_logger.py
test_setup_wizard.py test: test 2026-03-28 19:17:38 -07:00
test_shared_session_integration.py
test_ssl_verify_unit.py
test_stream_chunk_builder_annotations.py fix: merge annotations from all streaming chunks in stream_chunk_builder 2026-03-15 14:20:45 +05:30
test_streaming_connection_cleanup.py
test_system_message_format_bug.py
test_utils.py Litellm fix update bedrock models (#24947) 2026-04-01 19:22:54 -07:00
test_uuid_helper.py
test_video_generation.py Add new videos transformation 2026-03-16 17:56:21 +05:30
test_xai_responses_auto_routing.py

Testing for litellm/

This directory 1:1 maps the the litellm/ directory, and can only contain mocked tests.

The point of this is to:

  1. Increase test coverage of litellm/
  2. Make it easy for contributors to add tests for the litellm/ package and easily run tests without needing LLM API keys.

File name conventions

  • litellm/proxy/test_caching_routes.py maps to litellm/proxy/caching_routes.py
  • test_<filename>.py maps to litellm/<filename>.py