litellm/tests/test_litellm
yassin bae2bf003e fix(proxy): resolve router_settings.model_group_alias before key/team model auth
Key and team router_settings.model_group_alias aliases were resolved only after the key/team model allowlist checks ran, so a key allowed the alias target was denied when it requested the alias. Resolve the alias during auth and rewrite the request body to the target before the allowlist checks. The alias the client sent is kept in the request scope so the response model still echoes it.

Resolves LIT-3054

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-15 22:06:55 +00:00
..
a2a_protocol fix(proxy): run the remaining inline token counts off the event loop 2026-09-08 18:42:38 +00:00
anthropic_interface refactor(rust): remove per-request enablement arguments (#39928) 2026-09-07 10:43:45 -07:00
batches fix(batches): keep modality token details in raw vertex batch usage 2026-09-15 01:57:50 +00:00
caching Merge pull request #40262 from BerriAI/litellm_lit_7190_inline_token_counts 2026-09-15 13:38:00 -07:00
completion_extras fix(responses bridge): keep mid-conversation system messages in input 2026-09-08 11:44:49 -07:00
compression merge: main into litellm_headroom_protect_cached_prefix 2026-09-15 04:12:28 +00:00
containers fix(containers): page upstream until a non-admin container list fills its limit 2026-09-02 21:26:34 -07:00
endpoints fix(speech): honor pcm response_format for Gemini TTS and reject unsupported containers 2026-08-29 16:36:34 -07:00
enterprise Merge pull request #39836 from BerriAI/litellm_lit_6975_bedrock_files_delete_list 2026-09-12 21:13:27 -07:00
expected_fine_tuning_api
expected_responses_api_request test(responses): replace perma-skip azure shell e2e with offline coverage (#32444) 2026-07-08 10:01:41 -07:00
experimental_mcp_client fix(mcp): bind discovery caching to credentials and active callers 2026-09-11 14:49:00 -07:00
fixtures/together_ai_sync feat(models): add daily Together AI model registry sync script and workflow 2026-08-25 13:12:06 -07:00
google_genai refactor(google_genai): pick the stream logging endpoint type at construction 2026-08-26 17:18:44 -07:00
images test(images): pin scalar-array edit params survive as repeated multipart fields 2026-08-24 12:49:54 -07:00
integrations Merge pull request #41288 from BerriAI/litellm_langsmith_preserve_events_during_flush 2026-09-15 15:06:36 -07:00
interactions fix(interactions): poll queued background creates and drop the poll's deployment identity 2026-08-22 17:35:19 -07:00
litellm_core_utils fix(router): accept custom_provider_map providers before the first completion call 2026-09-15 21:43:47 +00:00
llms Merge pull request #38268 from BerriAI/litellm_fix_xai_web_search_nested_filters 2026-09-15 14:56:36 -07:00
models feat(auto-router): show routed model and savings in Claude Code and Codex (#40330) 2026-09-11 12:52:42 -07:00
ocr Merge remote-tracking branch 'origin/litellm_internal_staging' into litellm_ocr_custom_pricing 2026-09-12 15:42:59 -07:00
passthrough fix(passthrough): parse Bedrock stream spend incrementally instead of buffering the whole response (#40724) 2026-09-11 09:53:37 -07:00
proxy fix(proxy): resolve router_settings.model_group_alias before key/team model auth 2026-09-15 22:06:55 +00:00
rag fix(rag): let the managed store's params win over caller kwargs on the search call 2026-09-02 18:59:28 -07:00
realtime_api fix(realtime): send openai and xai health check keys as bearer tokens 2026-09-15 02:20:09 -07:00
repositories fix(proxy): always decrement on spend reset and reseed counters from the DB 2026-09-15 19:52:37 +00:00
rerank_api chore: merge litellm_internal_staging into litellm_fix_dashscope_rerank_endpoint 2026-09-02 15:07:02 -07:00
responses Merge remote-tracking branch 'origin/main' into litellm_responses_bridge_filters_unknown_params 2026-09-15 18:15:19 +00:00
router_strategy fix(router): accept fenced Fuse classifier verdicts 2026-09-15 13:11:56 -07:00
router_utils fix(router): time fallback-hop 408s against now, not the previous hop's end_time 2026-09-15 21:11:40 +00:00
rust_bridge Merge pull request #41180 from BerriAI/litellm_rust_bridge_native_stub 2026-09-15 11:25:56 -07:00
sandbox test: say whether a match= pattern is a regex or a literal (ruff RUF043) 2026-08-21 16:25:33 -07:00
secret_managers feat(secret_managers): support customer-managed KMS key for virtual keys stored in AWS Secrets Manager (#40475) 2026-09-11 09:54:08 -07:00
skills feat(skills): semantic search over the LiteLLM-hosted skill registry (#39401) 2026-09-07 12:28:38 -07:00
test_router fix(router): count deployment itpm reservations off the event loop 2026-09-07 21:29:26 -07:00
types Merge pull request #36775 from MvdB/litellm_presidio_new_entities 2026-09-15 11:26:21 -07:00
vector_stores Merge remote-tracking branch 'origin/litellm_internal_staging' into litellm_python_version_ci 2026-09-03 00:16:19 -07:00
videos test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
__init__.py
conftest.py fix(image_edit): await an async transform hook and hide the URL policy verdict from callers 2026-09-04 23:20:21 -07:00
log.txt
readme.md
test_a2a_registry_lookup.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_acompletion_session_reuse_e2e.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_add_deployment_no_master_key.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_aembedding_session_reuse_e2e.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_anthropic_beta_headers_filtering.py chore(oss): litellm oss staging 120626 (#30292) 2026-06-12 09:49:25 -07:00
test_anthropic_skills_transformation.py fix: encode upstream URL path identifiers 2026-04-29 22:02:39 -07:00
test_assert_ci_coverage.py test: add CircleCI integration contract foundation 2026-09-14 03:30:52 -07:00
test_assert_workflow_dir_hygiene.py feat(ci): assert .github/workflows holds only workflows, correctly named (#37616) 2026-08-20 21:36:26 +00:00
test_audio_transcription_rust_bridge.py refactor(rust): remove per-request enablement arguments (#39928) 2026-09-07 10:43:45 -07:00
test_auto_update_price_and_context_window_file.py feat(cost_map): derive source_revision from the loaded bytes instead of a _metadata stamp 2026-09-07 17:47:51 -07:00
test_azure_ad_token_credential_resolution.py test(router): cover s3_output_bucket_name surviving the trusted credential snapshot 2026-08-17 14:51:10 -07:00
test_azure_ai_grok_4_3_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_azure_ai_grok_4_6_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_azure_audio_price_aliases.py fix(pricing): add undated azure aliases for gpt-audio-mini and gpt-realtime-mini (#37867) 2026-08-21 18:44:19 -07:00
test_baseten_glm_5_3_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_batch_completion_models_all_responses.py test(batches): move orphan tests into tests/test_litellm for CI coverage (#30510) 2026-06-16 10:20:59 -07:00
test_bedrock_marengo_embed_3_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_bedrock_usgov_pricing.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_budget_ratchet_check.py fix(lint): let the ratchet guard recognise a graduated rule 2026-08-07 23:11:23 -07:00
test_chat_ui_responses_session.py
test_check_licenses.py fix(ci): retry transient PyPI license lookups 2026-08-23 09:23:35 +00:00
test_check_migrations_no_data_rewrites.py fix: keep a schema-qualified call inside an index expression from reading as a relation 2026-08-24 16:04:38 -07:00
test_check_py310_typing_imports.py fix: keep litellm importable on Python 3.10 and guard 3.11-only typing imports in CI (#39448) 2026-09-02 18:27:19 -07:00
test_check_test_quality.py feat(ci): gate patching of SDK internals in tests as TQ008 (#37787) 2026-08-22 22:54:30 -07:00
test_check_type_discipline.py perf(ci): fan the budget checkers out across cores (#37784) 2026-08-22 22:44:58 -07:00
test_circleci_path_filter.py perf(ci): gate the lint, MCP and dashboard jobs on the pull request's file list (#37559) 2026-08-19 18:32:21 -07:00
test_circleci_rust_toolchain.py fix(ci): pin workflow toolchain dependencies 2026-09-02 12:16:25 -07:00
test_claude_fable_5_config.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_claude_haiku_4_5_config.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_claude_opus_4_6_config.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_claude_opus_4_8_config.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_claude_opus_5_config.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_claude_sonnet_4_6_config.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_claude_sonnet_5_config.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_cloudflare_workers_ai_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_command_r7b_pricing.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_completion_timeout_resolution.py fix(router): honor litellm_settings.request_timeout as an independent per-attempt timeout (#31119) 2026-06-23 14:22:54 -07:00
test_component_entrypoint.py feat(proxy): share database connections across workers with an in-container pgbouncer (#39683) 2026-09-10 22:14:37 +00:00
test_compression.py Prompt Compression - add it to the proxy (#25729) 2026-04-20 15:08:00 -07:00
test_conftest.py test: trim the PROXY_BASE_URL fixture and regression docstrings 2026-08-19 00:56:37 -07:00
test_conftest_isolation.py test: roll back live router replay membership between tests (#36278) 2026-08-08 10:45:43 -07:00
test_constants.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_container_router.py
test_cost_calculation_log_level.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_cost_calculator.py Merge pull request #35180 from BerriAI/litellm_lit4995_vertex_rerank_search_units 2026-09-15 14:23:23 -07:00
test_cost_map_guard.py feat(cost_map): derive source_revision from the loaded bytes instead of a _metadata stamp 2026-09-07 17:47:51 -07:00
test_count_tokens_public_api.py fix(proxy): run the remaining inline token counts off the event loop 2026-09-08 18:42:38 +00:00
test_dashscope_image_generation.py feat(dashscope): support qwen-image-3.0 and qwen-image-3.0-pro image generation 2026-08-27 01:59:51 +00:00
test_daybreak_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_deepseek_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_default_branch.py ci: avoid duplicate default branch fetches 2026-09-07 15:28:01 -07:00
test_detect_changes.py perf(ci): gate the lint, MCP and dashboard jobs on the pull request's file list (#37559) 2026-08-19 18:32:21 -07:00
test_dockerfile_apk_repository.py fix(docker): add public Wolfi apk repo to runtime image (#39033) 2026-09-01 15:11:15 -07:00
test_dockerfile_bedrock_realtime_extra.py fix(docker): install bedrock-realtime extra in monolith proxy images (#39223) 2026-09-01 17:51:55 -07:00
test_dockerfile_non_root.py fix(docker.non_root): use numeric UID 65534 for K8s runAsNonRoot (#26268) 2026-04-22 18:00:04 -07:00
test_drop_params_env_var.py fix(init): keep non-flag LITELLM_DROP_PARAMS values on with a warning 2026-09-07 22:13:23 -07:00
test_e2e_egress_sentinel.py ci(e2e): record the e2e suite weekly and replay it on weekdays with zero egress (#38163) 2026-08-24 23:49:03 -04:00
test_eager_tiktoken_load.py
test_env_key_doc_gate.py fix(ci): make the env-key doc gate see bare get_secret and get_secret_str reads (#35996) 2026-08-05 14:49:55 -07:00
test_exception_exports.py
test_exception_header_preservation.py fix(bedrock): keep x-amzn-RequestId on chat error responses (#40089) 2026-09-07 17:16:47 -07:00
test_exception_mapping_request_attribute.py
test_filter_out_litellm_params.py
test_fireworks_serverless_model_costs.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_gate_slot_lock.py ci: avoid duplicate default branch fetches 2026-09-07 15:28:01 -07:00
test_gemini_3_1_flash_lite_image_pricing.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_gemini_tts_native_audio_pricing.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_get_blog_posts.py test(lint): ban blind pytest.raises(Exception) with ruff B017 (#37731) 2026-08-20 18:09:42 -07:00
test_git_hooks.py chore(hooks): enforce Conventional Commits and Conventional Branches (#30174) 2026-06-11 10:00:23 -07:00
test_github_close_low_quality_prs.py test: require a match= on broad pytest.raises, and drop duplicate parametrize cases (#37769) 2026-08-20 20:24:49 -07:00
test_github_review_gate.py feat(agent-shin): automated PR/issue triage, low-quality auto-close, and review-gate label lifecycle (#30433) 2026-06-17 20:42:27 -07:00
test_github_triage_with_llm.py test: require a match= on broad pytest.raises, and drop duplicate parametrize cases (#37769) 2026-08-20 20:24:49 -07:00
test_github_triage_workflows.py chore(ci): close the test-census blind spots and move scripts out of workflows/ (#37586) 2026-08-20 10:07:14 -07:00
test_gpt_5_4_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_gpt_5_5_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_gpt_image_cost_calculator.py fix(registry): drop gpt-image-2 text output price, add openrouter minimax-m3 and qwen3.7-plus 2026-09-04 15:03:29 +00:00
test_gpt_realtime_mode.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_groq_streaming_encoding.py
test_guardrail_exception_status_codes.py Litellm oss staging (#28161) 2026-05-18 16:27:44 -07:00
test_lazy_imports.py Revert "perf: lazy-load SDK symbols so import litellm stays under 60 MB RSS (…" 2026-09-05 16:07:09 -07:00
test_lint_workflow_diff_gates.py ci(lint): gate top-level tests/e2e and litellm files in the diff-scoped lint steps 2026-09-01 22:30:46 -07:00
test_litellm_params_reserved_keys.py
test_logging.py fix(proxy): read LITELLM_DISABLE_ACCESS_LOG_PATHS per record and match before redaction 2026-09-14 17:27:43 +00:00
test_lowest_latency_zero_tokens.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_main.py fix(openai): keep extra_headers out of the chat request body on the httpx handler path 2026-09-14 22:27:35 +00:00
test_main_module_header.py Add main module header comment 2026-05-06 00:26:17 +00:00
test_mistral_medium_3_5_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_mistral_small_4_0_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_mistral_zai_glm_5_2_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_model_block_unblock.py fix(proxy): serialize model reconciles so concurrent model writes stop evicting each other (#36687) 2026-08-12 13:42:26 -07:00
test_model_cost_aliases.py
test_model_param_helper.py
test_model_prices_schema.py feat(pricing): add azure gpt-chat-latest global and data zone rates 2026-09-12 23:34:12 -07:00
test_model_response_normalization.py
test_muse_spark_1_1_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_muse_spark_1_2_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_muse_spark_1_3_model_metadata.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_mutation_report.py fix(ci): stop the mutation report publishing a score it never measured (#37825) 2026-08-21 20:15:52 -07:00
test_nested_drop_params.py
test_non_chat_routes_open_llm_spans.py fix(otel): emit LLM Call spans for speech, image, moderation, ocr and transcription (#37752) 2026-08-22 11:11:21 -07:00
test_openai_embedding_encoding_format_default.py test(embeddings): move legacy intercepts to the wire for the omitted-format path 2026-08-29 12:04:44 -07:00
test_openai_service_tier_long_context_pricing.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_pre_commit_lint.py ci: follow the default branch in development tooling 2026-09-07 14:34:45 -07:00
test_prisma_generate_if_needed.py fix(lint): generate the prisma client into the gate-owned venv 2026-08-06 01:54:26 -07:00
test_project_alias_tracking.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_project_tags_pydantic.py test(lint): ban blind pytest.raises(Exception) with ruff B017 (#37731) 2026-08-20 18:09:42 -07:00
test_proxy_auth.py test: run the 30 test files stranded in the second mirror (#37595) 2026-08-20 10:59:43 -07:00
test_rag_openai_ingestion.py chore: litellm oss staging (#30745) 2026-06-18 13:55:35 -07:00
test_rate_limit_error_unification.py test(rate-limits): drop the removed data kwarg from the v3 dynamic limiter raise-branch test 2026-07-30 15:20:44 -07:00
test_redact_string_in_error_paths.py fix(proxy): stop leaking internal exception details to clients (#39380) 2026-09-02 17:32:00 -07:00
test_redis.py test(redis): pin ElastiCache IAM signing and TLS coercion invariants 2026-09-10 10:13:03 -04:00
test_redis_credential_provider.py test(redis): pin ElastiCache IAM signing and TLS coercion invariants 2026-09-10 10:13:03 -04:00
test_register_model_custom_pricing.py fix(cost): bill off-peak rates for deployments that set only off_peak_pricing 2026-09-01 12:14:46 -07:00
test_register_model_zero_cost_persistence.py chore(oss): litellm oss staging 150626 (#30463) 2026-06-16 12:06:41 -07:00
test_replicate_model_key_format.py test: collapse blank lines left by removed tests 2026-09-08 02:21:55 +00:00
test_responses_api_bridge_non_stream.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_responses_id_security.py fix(proxy): authorize every Responses API id, not only the ones the proxy issued (#39548) 2026-09-11 11:47:05 -07:00
test_responses_streaming_container_ownership.py chore(oss): litellm oss staging 150626 (#30463) 2026-06-16 12:06:41 -07:00
test_retrieve_batch_bedrock_dispatch.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_router.py fix(router): accept custom_provider_map providers before the first completion call 2026-09-15 21:43:47 +00:00
test_router_block_helpers.py feat: litellm oss 110626 (#30202) 2026-06-11 22:30:26 -07:00
test_router_exception_redaction.py test(router): let monkeypatch own expose_router_debug_in_errors (#37848) 2026-08-22 09:02:40 -07:00
test_router_google_genai.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_router_model_cost_isolation.py feat(auto-router): allow opted-in team members to manage their routers 2026-09-14 23:56:55 -07:00
test_router_order_fallback.py fix(router): skip the refusing deployment when retrying a non-transient error 2026-09-05 22:25:13 -07:00
test_router_per_deployment_num_retries.py refactor(router): resolve retry policy by exception MRO and add DefaultRetries 2026-09-04 16:09:01 -07:00
test_router_redis_init.py
test_router_retry_backoff_headers.py test: run the 30 test files stranded in the second mirror (#37595) 2026-08-20 10:59:43 -07:00
test_router_retry_non_retryable_errors.py
test_router_retry_policy_update.py fix: preserve shared optional callbacks 2026-09-02 03:28:04 +00:00
test_router_silent_experiment.py
test_router_streaming_fallback_metadata.py chore: litellm oss staging (#30968) 2026-06-23 07:31:44 -07:00
test_router_weighted_failover.py fix(router): skip the refusing deployment when retrying a non-transient error 2026-09-05 22:25:13 -07:00
test_ruff_strict_gate.py fix: address cross-version CI failures 2026-09-02 14:17:19 -07:00
test_sambanova_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_secret_redaction.py fix(proxy): stop leaking internal exception details to clients (#39380) 2026-09-02 17:32:00 -07:00
test_select_ui_test_scope.py test(ui): align workflow expectations with Vitest 4 2026-09-08 16:13:58 -07:00
test_service_logger.py fix: missing span for guardrail passthrough (#29552) 2026-06-03 01:25:15 +00:00
test_setup_wizard.py
test_shared_session_integration.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_ssl_verify_unit.py refactor(bedrock): remove the dead BedrockLLM invoke code path 2026-07-29 20:25:36 -07:00
test_stream_chunk_builder_annotations.py
test_stream_chunk_builder_citations.py fix(streaming): join block-list citation deltas without extra nesting 2026-08-28 13:56:07 -07:00
test_stream_chunk_builder_images.py test: run the 30 test files stranded in the second mirror (#37595) 2026-08-20 10:59:43 -07:00
test_streaming_connection_cleanup.py test: drop the cwd-relative sys.path.insert calls from the test suite (#37802) 2026-08-22 09:25:58 -07:00
test_sync_together_ai_models.py feat(cost_map): derive source_revision from the loaded bytes instead of a _metadata stamp 2026-09-07 17:47:51 -07:00
test_system_message_format_bug.py
test_test_quality_gate.py Merge pull request #39870 from BerriAI/litellm_lit_6917_make_check_test_tree_ruff 2026-09-07 10:55:28 -07:00
test_thinking_enabled.py test: drop restating comment and wrap long call in thinking tests 2026-08-18 19:55:22 -07:00
test_together_ai_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_type_check_gate.py fix(lint): retire the single-slot base-counts cache 2026-08-06 02:23:52 -07:00
test_type_discipline_gate.py fix(lint): pick the merge-aware base so in-progress merges are not blamed for base drift 2026-08-04 17:58:41 -07:00
test_utils.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_utils_module_docstring.py Add utils module docstring 2026-05-06 00:42:49 +00:00
test_uuid_helper.py
test_vcr_safe_body_matcher.py test: stabilize batch VCR coverage and stop live upload/network leaks (#29477) 2026-06-02 16:11:52 -07:00
test_video_generation.py fix(cost): carry output_cost_per_second_720p through model info 2026-09-09 14:09:25 +00:00
test_with_dashboard_node.py fix(bootstrap): fail fast when nvm cannot activate the pinned node 2026-08-04 21:18:58 -07:00
test_xai_grok_4_3_model_metadata.py test: drop tests that pin vendor facts and add the CLAUDE.md rule 2026-09-15 18:24:30 +00:00
test_xai_responses_auto_routing.py fix(xai): stop sending web_search_options to xAI's retired Live Search path 2026-08-25 23:01:46 +00:00

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