litellm/tests/proxy_unit_tests
milan-berri 3e60ca3682
fix: populate user_id and user_info for admin users in /user/info (#22239)
* fix: populate user_id and user_info for admin users in /user/info endpoint

Fixes #22179

When admin users call /user/info without a user_id parameter, the endpoint
was returning null for both user_id and user_info fields. This broke
budgeting tooling that relies on /user/info to look up current budget and spend.

Changes:
- Modified _get_user_info_for_proxy_admin() to accept user_api_key_dict parameter
- Added logic to fetch admin's own user info from database
- Updated function to return admin's user_id and user_info instead of null
- Updated unit test to verify admin user_id is populated

The fix ensures admin users get their own user information just like regular users.

* test: make mock get_data signature match real method

- Updated MockPrismaClientDB.get_data() to accept all parameters that the real method accepts
- Makes mock more robust against future refactors
- Added datetime and Union imports
- Mock now returns None when user_id is not provided
2026-02-27 19:12:16 -08:00
..
example_config_yaml
test_configs
test_model_response_typing
adroit-crow-413218-bc47f303efc9.json
azure_fine_tune.jsonl
batch_job_results_furniture.jsonl
conftest copy.py
conftest.py
data_map.txt
eagle.wav
gettysburg.wav
large_text.py
messages_with_counts.py
model_cost.json
openai_batch_completions_router.jsonl
openai_batch_completions.jsonl
speech_vertex.mp3
test_aproxy_startup.py
test_audit_logs_proxy.py fix(tests): skip prisma DB test and sync root schema.prisma with spec_path field 2026-02-20 12:29:53 -03:00
test_auth_checks.py Fix: Anthropic model wildcard access issue 2026-02-23 17:12:55 +05:30
test_banned_keyword_list.py
test_blog_posts_endpoint.py fix: log fallback warning in blog posts endpoint and tighten test 2026-02-21 17:34:08 -08:00
test_check_responses_cost.py
test_custom_callback_input.py
test_custom_logger_s3_gcs.py
test_custom_tokenizer_bug.py
test_db_schema_changes.py
test_db_schema_migration.py Fix CI: Revert security scan changes and add GitGuardian ignore rules (#18358) 2025-12-22 17:03:53 -08:00
test_default_end_user_budget_simple.py
test_deployed_proxy_keygen.py
test_e2e_pod_lock_manager.py fix(tests): skip more CI tests requiring external DB/Redis connections 2026-02-20 11:49:38 -03:00
test_get_favicon.py feat(proxy): add custom favicon support\n\nAdd ability to configure a custom favicon for the litellm proxy UI.\n\n- Add favicon_url field to UIThemeConfig model\n- Add LITELLM_FAVICON_URL env var support\n- Add /get_favicon endpoint to serve custom favicons\n- Update ThemeContext to dynamically set favicon\n- Add favicon URL input to UI theme settings page\n- Add comprehensive tests\n\nCloses #8323 (#21653) 2026-02-21 00:46:51 -08:00
test_get_image.py fix: optimize logo fetching and resolve mcp import blockers (#19719) 2026-01-25 23:08:16 -08:00
test_google_endpoint_routing.py
test_google_gemini_proxy_request.py
test_jwt.py fix(tests): skip additional CI tests requiring external DB connection 2026-02-20 11:35:43 -03:00
test_key_generate_dynamodb.py
test_key_generate_prisma.py [Fix] /key/aliases: Add pagination and search to prevent OOMs 2026-02-25 17:55:26 -08:00
test_models_fallback_endpoint.py
test_prisma_client_backoff_retry.py fix(tests): mock prisma.Prisma in backoff retry tests to avoid 'prisma generate' 2026-02-17 19:29:20 -03:00
test_project_endpoints_prisma.py [Fix] Include created_at and updated_at in /project/list response 2026-02-27 15:41:03 -08:00
test_prompt_test_endpoint.py
test_proxy_config_unit_test.py fix: enable JSON logging via configuration and add regression test 2026-01-13 09:38:19 -07:00
test_proxy_custom_auth.py
test_proxy_custom_logger.py fix test_chat_completion 2026-02-17 20:26:28 +05:30
test_proxy_encrypt_decrypt.py
test_proxy_exception_mapping.py
test_proxy_gunicorn.py
test_proxy_pass_user_config.py fix test_chat_completion 2026-02-17 20:26:28 +05:30
test_proxy_reject_logging.py
test_proxy_routes.py tests and route permissions (#21508) 2026-02-18 16:58:38 -08:00
test_proxy_server_caching.py
test_proxy_server_keys.py
test_proxy_server_langfuse.py
test_proxy_server_spend.py
test_proxy_server.py Add support for forwarding provider's auth headers 2026-02-25 12:08:25 +05:30
test_proxy_setting_guardrails.py fix(lakera-guardrail): use os.environ.get() to avoid KeyError on missing LAKERA_API_KEY 2026-02-17 19:30:22 -03:00
test_proxy_token_counter.py fix(tests): use unconditional skip for vertex/gemini token counting test 2026-02-20 11:36:54 -03:00
test_proxy_utils.py fix: populate user_id and user_info for admin users in /user/info (#22239) 2026-02-27 19:12:16 -08:00
test_realtime_cache.py
test_response_polling_handler.py fix: complete asyncio.iscoroutinefunction deprecation fix across codebase 2026-02-17 18:20:44 -03:00
test_search_api_logging.py fix(tests): skip test_search_api_logging_and_cost_tracking - requires Prisma DB 2026-02-20 13:19:01 -03:00
test_server_root_path.py fix: server rooth path (#19790) 2026-01-26 09:48:06 -08:00
test_skills_db.py fix(tests): skip CI tests requiring external services (DB, API keys) 2026-02-20 11:28:42 -03:00
test_ui_path_detection.py fix: Add LITELLM_UI_PATH and LITELLM_ASSETS_PATH for read-only filesystem support (#20492) 2026-02-12 19:39:04 +05:30
test_unit_test_max_model_budget_limiter.py fix: custom auth budget issue 2026-02-26 13:03:01 +05:30
test_unit_test_proxy_hooks.py
test_update_spend.py
test_user_api_key_auth.py Fix mock target for enterprise license check 2026-02-17 21:25:00 -03:00
test_zero_cost_model_budget_bypass.py Add support for 0 cost models 2026-02-02 13:29:37 +05:30
vertex_key.json