litellm/tests/test_litellm
Alexsander Hamir f95572e3ed
Fix broken mocks in 6 flaky tests to prevent real API calls (#19829)
* Fix broken mocks in 6 flaky tests to prevent real API calls

Added network-level HTTP blocking using respx to prevent tests from making real API calls when Python-level mocks fail. This makes tests more reliable and retryable in CI.

Changes:

- Azure OIDC test: Added Azure Identity SDK mock to prevent real Azure calls

- Vector store test: Added @respx.mock decorator to block HTTP requests

- Resend email tests (3): Added @respx.mock decorator for all 3 test functions

- SendGrid email test: Added @respx.mock decorator

All test assertions and verification logic remain unchanged - only added safety nets to catch leaked API calls.

* Fix failing OIDC secret manager tests

Fixed two test failures in test_secret_managers_main.py:

1. test_oidc_azure_ad_token_success: Corrected the patch path for get_bearer_token_provider from 'litellm.secret_managers.get_azure_ad_token_provider.get_bearer_token_provider' to 'azure.identity.get_bearer_token_provider' since the function is imported from azure.identity.

2. test_oidc_google_success: Added @patch('httpx.Client') decorator to prevent any real HTTP connections during test execution, resolving httpx.ConnectError issues.

Both tests now pass successfully.
2026-01-26 17:39:40 -08:00
..
a2a_protocol
anthropic_interface/exceptions
caching
completion_extras
containers fix: make HTTPHandler mockable in OIDC secret manager tests (#19803) 2026-01-26 11:00:42 -08:00
enterprise Fix broken mocks in 6 flaky tests to prevent real API calls (#19829) 2026-01-26 17:39:40 -08:00
experimental_mcp_client fix: FLAKY tests 2026-01-24 11:13:44 -08:00
google_genai test_stream_transformation_error_sync 2026-01-24 17:19:21 -08:00
images
integrations fixing arize tests 2026-01-23 23:13:21 -08:00
interactions
litellm_core_utils Merge branch 'main' into litellm_staging_01_16_2026 2026-01-19 18:11:21 +05:30
llms Messages api bedrock converse caching and pdf support (#19785) 2026-01-26 13:19:56 -08:00
passthrough
proxy CI/CD: Increase retries and stabilize litellm_mapped_tests_core (#19826) 2026-01-26 17:00:18 -08:00
responses fix: include tool arguments in proxy_server_request for spend logs callbacks 2026-01-23 16:36:37 +09:00
router_strategy
router_utils
secret_managers Fix broken mocks in 6 flaky tests to prevent real API calls (#19829) 2026-01-26 17:39:40 -08:00
types
vector_stores Fix broken mocks in 6 flaky tests to prevent real API calls (#19829) 2026-01-26 17:39:40 -08:00
__init__.py
conftest.py
log.txt
readme.md
test_acompletion_session_reuse_e2e.py
test_add_deployment_no_master_key.py
test_aembedding_session_reuse_e2e.py
test_azure_video_router.py
test_claude_haiku_4_5_config.py
test_constants.py
test_container_router.py
test_cost_calculation_log_level.py
test_cost_calculator.py perf: Add LRU caching to get_model_info for faster cost lookups (#19606) 2026-01-23 17:26:45 -08:00
test_eager_tiktoken_load.py
test_exception_header_preservation.py
test_exception_mapping_request_attribute.py
test_filter_out_litellm_params.py
test_gpt_image_cost_calculator.py
test_groq_streaming_encoding.py
test_lazy_imports.py
test_logging.py
test_lowest_latency_zero_tokens.py
test_main.py fix: make HTTPHandler mockable in OIDC secret manager tests (#19803) 2026-01-26 11:00:42 -08:00
test_model_response_normalization.py
test_nested_drop_params.py
test_redis.py
test_responses_api_bridge_non_stream.py Add ChatGPT subscription support and responses bridge (#19030) 2026-01-19 05:37:45 -08:00
test_responses_id_security.py
test_router_google_genai.py
test_router_per_deployment_num_retries.py
test_router.py Manual revert #19078 2026-01-17 06:54:08 +09:00
test_shared_session_integration.py
test_ssl_verify_unit.py Fix/per service ssl override v2 (#19538) 2026-01-21 20:10:04 -08:00
test_system_message_format_bug.py
test_utils.py fix: drop_params not dropping prompt_cache_key for non-OpenAI providers 2026-01-19 08:49:03 -03:00
test_uuid_helper.py
test_video_generation.py test fixes 2026-01-24 14:08:48 -08: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