fix(test): mock enterprise license check in JWT test

The test test_jwt_non_admin_team_route_access was failing with:
```
AssertionError: assert 'Only proxy admin can be used to generate' in
'Authentication Error, JWT Auth is an enterprise only feature...'
```

Root cause: The test was hitting the enterprise license validation before
reaching the proxy admin authorization check. In parallel execution with
--dist=loadscope, environment variables like LITELLM_LICENSE can vary
between workers or be unset, causing inconsistent test behavior.

Solution: Mock the JWTAuthManager._is_jwt_auth_available method to
return True, bypassing the license check. This allows the test to
reach the actual authorization logic being tested (proxy admin check).

This approach is more reliable than setting environment variables which
can cause pollution between parallel tests.

Fixes test failure exposed by PR #21277.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Julio Quinteros Pro 2026-02-15 20:43:18 -03:00
parent 62c7ebfd2c
commit 3c61c7fbb1

View file

@ -1044,8 +1044,13 @@ async def test_jwt_non_admin_team_route_access(monkeypatch):
litellm.proxy.proxy_server, "general_settings", {"enable_jwt_auth": True}
)
# Mock JWTAuthManager.auth_builder
# Mock enterprise license check and JWTAuthManager.auth_builder
# License check must be mocked to avoid environment variable pollution
# in parallel test execution
with patch(
"litellm.proxy.auth.handle_jwt.JWTAuthManager._is_jwt_auth_available",
return_value=True,
), patch(
"litellm.proxy.auth.handle_jwt.JWTAuthManager.auth_builder",
return_value=mock_jwt_response,
):