litellm/tests/test_litellm
michelligabriele 558f01e848
fix(proxy): use return value from CustomLogger.async_post_call_success_hook (#19670)
* fix(proxy): use return value from CustomLogger.async_post_call_success_hook

Previously the return value was ignored for CustomLogger callbacks,
preventing users from modifying responses. Now the return value is
captured and used to replace the response (if not None), consistent
with CustomGuardrail and streaming iterator hook behavior.

Fixes issue with custom_callbacks not being able to inject data into
LLM responses.

* fix(proxy): also fix async_post_call_streaming_hook to use return value

Previously the streaming hook only used return values that started with
"data: " (SSE format). Now any non-None return value is used, consistent
with async_post_call_success_hook and streaming iterator hook behavior.

Added tests for streaming hook transformation.

---------

Co-authored-by: Gabriele Michelli <michelligabriele0@gmail.com>
2026-01-26 08:48:22 -08:00
..
a2a_protocol
anthropic_interface/exceptions
caching
completion_extras
containers test_retrieve_container_basic 2026-01-24 14:31:54 -08:00
enterprise fix flaky tests 2026-01-24 13:04:20 -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 Merge pull request #19638 from BerriAI/main 2026-01-23 14:54:17 +05:30
passthrough
proxy fix(proxy): use return value from CustomLogger.async_post_call_success_hook (#19670) 2026-01-26 08:48:22 -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 patch reliability mock tests 2026-01-24 17:37:17 -08:00
types
vector_stores fix flaky tests 2026-01-24 13:04:20 -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 test fixes 2026-01-24 14:08:48 -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: fix missing test 2026-01-16 10:33:53 +09:00
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