litellm/tests
Alexsander Hamir ddb90c9ad7
[Fix] - Router: add model_name index for O(1) deployment lookups (#15113)
* perf(router): add model_name index for O(1) deployment lookups

Add model_name_to_deployment_indices mapping to optimize _get_all_deployments()
from O(n) to O(1) + O(k) lookups.

- Add model_name_to_deployment_indices: Dict[str, List[int]]
- Add _build_model_name_index() to build/maintain the index
- Update _add_model_to_list_and_index_map() to maintain both indices
- Refactor to use idx = len(self.model_list) before append (cleaner)
- Optimize _get_all_deployments() to use index instead of linear scan

* test(router): add test coverage for _build_model_name_index

Add single comprehensive test for _build_model_name_index() function to fix
code coverage CI failure.

The test verifies:
- Index correctly maps model_name to deployment indices
- Handles multiple deployments per model_name
- Clears and rebuilds index correctly

Fixes: CI code coverage error for _build_model_name_index
2025-10-06 08:14:11 -07:00
..
basic_proxy_startup_tests (fix) don't block proxy startup if license check fails & using prometheus (#6839) 2024-11-20 17:55:39 -08:00
batches_tests [Feat] Batches - Add bedrock retrieve endpoint support (#14618) 2025-09-16 19:19:02 -07:00
code_coverage_tests [Security Fix] fix: don't log JWT SSO token on .info() log (#15145) 2025-10-02 15:07:37 -07:00
documentation_tests Litellm dev 12 28 2024 p1 (#7463) 2024-12-28 20:26:00 -08:00
enterprise test: fix minor test 2025-10-04 14:55:04 -07:00
guardrails_tests test bedrock guardrails 2025-10-04 09:18:26 -07:00
image_gen_tests fix bedrock end of life img gen models 2025-09-27 17:02:48 -07:00
litellm/llms Revert "fix: remove anthropic-beta header for Vertex AI requests with prompt caching" (#14421) 2025-09-10 15:47:18 -07:00
litellm-proxy-extras Prisma Migrate - support setting custom migration dir (#10336) 2025-04-26 12:05:06 -07:00
litellm_utils_tests Fix end user cost tracking in the responses API (#15124) 2025-10-02 15:13:57 -07:00
llm_responses_api_testing [Feat] Return Cost for Responses API Streaming requests (#15053) 2025-09-29 19:47:04 -07:00
llm_translation feat(snowflake): add function calling support for Snowflake Cortex REST API 2025-10-05 13:08:33 +02:00
load_tests test: test_embedding_performance 2025-05-14 21:31:07 -07:00
local_testing Merge pull request #14764 from daily-kim/litellm_fix_bearer_capitalization 2025-10-03 22:02:46 -07:00
logging_callback_tests fix LF tests 2025-10-04 10:39:17 -07:00
mcp_tests fix: test 2025-09-30 07:25:32 +09:00
multi_instance_e2e_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
old_proxy_tests/tests test fix 2025-09-27 12:40:34 -07:00
openai_endpoints_tests fix type 2025-09-16 15:41:52 -07:00
otel_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
pass_through_tests test_azure_openai_assistants_e2e_operations_stream 2025-10-04 10:53:46 -07:00
pass_through_unit_tests (Feat) Add Vertex AI Live API WebSocket Passthrough with Cost Tracking 2025-09-30 21:14:16 -07:00
proxy_admin_ui_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
proxy_security_tests test fix 2025-10-04 10:57:02 -07:00
proxy_unit_tests test: fix raise 2025-10-04 16:11:22 -07:00
router_unit_tests [Fix] - Router: add model_name index for O(1) deployment lookups (#15113) 2025-10-06 08:14:11 -07:00
scim_tests [Feat SSO] Add LiteLLM SCIM Integration for Team and User management (#10072) 2025-04-16 19:21:47 -07:00
spend_tracking_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
store_model_in_db_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_litellm feat(snowflake): add function calling support for Snowflake Cortex REST API 2025-10-05 13:08:33 +02:00
unified_google_tests fix: gooogle GenAI route tests 2025-10-04 10:18:25 -07:00
vector_store_tests fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
windows_tests [Bug Fix] UnicodeDecodeError: 'charmap' on Windows during litellm import (#10542) 2025-05-03 21:31:05 -07:00
__init__.py [Feat] Add github co-pilot as a new LLM API provider (#12325) 2025-07-04 13:12:16 -07:00
gettysburg.wav feat(main.py): support openai transcription endpoints 2024-03-08 10:25:19 -08:00
large_text.py fix(router.py): check for context window error when handling 400 status code errors 2024-03-26 08:08:15 -07:00
openai_batch_completions.jsonl feat(router.py): Support Loadbalancing batch azure api endpoints (#5469) 2024-09-02 21:32:55 -07:00
README.MD [Feat] MCP Gateway Fine-grained Tools Addition (#15153) 2025-10-03 10:16:29 -07:00
test_budget_management.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_callbacks_on_proxy.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_config.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_debug_warning.py fix(utils.py): fix togetherai streaming cost calculation 2024-08-01 15:03:08 -07:00
test_end_users.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_entrypoint.py (fix) clean up root repo - move entrypoint.sh and build_admin_ui to /docker (#6110) 2024-10-08 11:34:43 +05:30
test_fallbacks.py Ollama Chat - parse tool calls on streaming (#11171) 2025-05-27 16:14:49 -07:00
test_health.py (test) /health/readiness 2024-01-29 15:27:25 -08:00
test_keys.py test: temporarily skip test due to change testing model change - need to update test for new model 2025-05-09 09:02:08 -07:00
test_logging.conf feat(proxy_cli.py): add new 'log_config' cli param (#6352) 2024-10-21 21:25:58 -07:00
test_models.py test_add_model_run_health 2025-09-27 10:59:25 -07:00
test_openai_endpoints.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_organizations.py UI - fix adding vertex models with reusable credentials + fix pagination on keys table + fix showing org budgets on table (#10528) 2025-05-03 08:16:53 -07:00
test_passthrough_endpoints.py fix: update authorization header to use 'Bearer' instead of 'bearer' 2025-09-21 10:44:47 +00:00
test_ratelimit.py (Refactor / QA) - Use LoggingCallbackManager to append callbacks and ensure no duplicate callbacks are added (#8112) 2025-01-30 19:35:50 -08:00
test_resource_cleanup.py Fix: Properly close aiohttp client sessions to prevent resource leaks (#12251) 2025-07-09 09:25:17 -07:00
test_spend_logs.py Revert "Allow configuration to on what threshold to try truncating request content in db" 2025-08-28 16:12:42 -06:00
test_team.py build: publish new litellm-proxy-extras file 2025-05-27 17:44:23 -07:00
test_team_logging.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_team_members.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00
test_users.py fix: use fastuuid helper (#14903) 2025-09-25 15:47:01 -07:00

In total litellm runs 1000+ tests

[02/20/2025] Update:

To make it easier to contribute and map what behavior is tested,

we've started mapping the litellm directory in tests/test_litellm

This folder can only run mock tests.