litellm/tests
Cole McIntosh 8965cc3b6c
Fix unpack_defs handling of nested $ref inside anyOf items (#11964)
* refactor(unpack_defs): enhance handling of schema properties and anyOf structures

- Improved the unpack_defs function to handle top-level properties and nested structures more effectively.
- Added recursion for items in schemas and refined the handling of anyOf branches to ensure proper unpacking of references.
- Streamlined the logic for resolving $ref keys and managing nested schemas.

* test(unpack_defs): add test for resolving nested $ref in anyOf items

- Introduced a new test to verify that unpack_defs correctly resolves references within items of anyOf structures, addressing a specific bug scenario (Issue #11372).
- The test includes a minimal schema to ensure proper unpacking and validation of the resolved items schema.

* refactor(unpack_defs): implement a generic resolver for $ref entries

- Redesigned the unpack_defs function to provide a more robust and dependency-free implementation for resolving all $ref entries in JSON schemas.
- Introduced a depth-first traversal method that efficiently handles nested structures, including anyOf, allOf, and items, while avoiding infinite recursion.
- Enhanced memory management by resolving nodes in-place without creating a full dereferenced copy, improving performance and reducing overhead.

* Remove test for unpack_defs resolving nested references in anyOf items from test_utils.py

* Add test for unpack_defs resolving nested references in anyOf items

This commit introduces a new test to ensure that the unpack_defs function correctly resolves $ref references within items of anyOf schemas, addressing issue #11372. The test verifies that the unpacked schema contains the expected properties and structure.
2025-06-24 09:08:15 -07:00
..
basic_proxy_startup_tests
batches_tests Litellm managed file updates combined (#11040) 2025-05-22 17:20:41 -07:00
code_coverage_tests docs(litellm_logging_code_coverage.py): fix check 2025-06-18 21:36:03 -07:00
documentation_tests
enterprise test_internal_user_endpoints.py 2025-06-21 16:45:14 -07:00
guardrails_tests [Bug Fix] Bedrock Guardrail - Don't raise exception on intervene action (#11875) 2025-06-23 19:59:44 -07:00
image_gen_tests [Fix]: Add cost tracking for image edits endpoint [OpenAI, Azure] (#11186) 2025-05-27 17:52:15 -07:00
litellm_utils_tests Update enduser spend and budget reset date based on budget duration (#8460) 2025-06-08 08:39:14 -07:00
litellm-proxy-extras
llm_responses_api_testing [Feat] Add Azure Codex Models on LiteLLM + new /v1 preview Azure OpenAI API (#11934) 2025-06-20 18:08:44 -07:00
llm_translation Enhance Mistral API: Add support for parallel tool calls (#11770) 2025-06-19 20:12:39 -07:00
load_tests
local_testing Minor Fixes (#11868) 2025-06-18 14:12:59 -07:00
logging_callback_tests [Feat] Enterprise - Allow dynamically disabling callbacks in request headers (#11985) 2025-06-23 14:32:05 -07:00
mcp_tests [Feat] MCP - Allow connecting to MCP with authentication headers + Allow clients to specify MCP headers (#11890) (#11891) 2025-06-19 20:07:08 -07:00
multi_instance_e2e_tests
old_proxy_tests/tests
openai_endpoints_tests set flaky tests as flaky 2025-06-14 13:51:52 -07:00
otel_tests set flaky tests as flaky 2025-06-14 13:51:52 -07:00
pass_through_tests test_anthropic_basic_completion_with_headers 2025-06-14 13:56:06 -07:00
pass_through_unit_tests [Bug Fix] Cost tracking and logging via the /v1/messages API are not working when using Claude Code (#11928) 2025-06-20 18:08:35 -07:00
proxy_admin_ui_tests test(test_sso_sign_in.py): update test 2025-06-03 21:46:34 -07:00
proxy_security_tests
proxy_unit_tests Squashed commit of the following: 2025-06-20 23:11:53 -07:00
router_unit_tests Support env var vertex credentials for passthrough + ignore space id on watsonx deployment (throws Json validation errors) (#11527) 2025-06-07 20:31:05 -07:00
scim_tests
spend_tracking_tests
store_model_in_db_tests fix test MCP 2025-06-20 12:09:45 -07:00
test_litellm Fix unpack_defs handling of nested $ref inside anyOf items (#11964) 2025-06-24 09:08:15 -07:00
windows_tests
__init__.py Litellm fix GitHub action testing (#11163) 2025-05-26 14:41:42 -07:00
gettysburg.wav
large_text.py
openai_batch_completions.jsonl
README.MD
test_budget_management.py Update enduser spend and budget reset date based on budget duration (#8460) 2025-06-08 08:39:14 -07:00
test_callbacks_on_proxy.py
test_config.py
test_debug_warning.py
test_end_users.py
test_entrypoint.py
test_fallbacks.py Ollama Chat - parse tool calls on streaming (#11171) 2025-05-27 16:14:49 -07:00
test_health.py
test_keys.py
test_logging.conf
test_models.py Add model access groups on UI (#11719) 2025-06-13 21:20:25 -07:00
test_openai_endpoints.py
test_organizations.py
test_passthrough_endpoints.py
test_ratelimit.py
test_spend_logs.py
test_team_logging.py
test_team_members.py
test_team.py build: publish new litellm-proxy-extras file 2025-05-27 17:44:23 -07:00
test_users.py test: fix imports 2025-05-26 22:06:53 -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/litellm

This folder can only run mock tests.