From 123052ecf8665dcd71c9ded6e7c684fe599e2a63 Mon Sep 17 00:00:00 2001 From: Yuneng Jiang Date: Mon, 30 Mar 2026 13:27:03 -0700 Subject: [PATCH] [Fix] WatsonX tests failing on CI due to missing env vars Tests are fully mocked but require WATSONX_URL and WATSONX_PROJECT_ID to pass provider validation before reaching the mocked HTTP client. Add an autouse fixture with dummy values and clear WATSONX_ZENAPIKEY/ WATSONX_TOKEN to prevent env leakage from dotenv. Co-Authored-By: Claude Opus 4.6 (1M context) --- tests/llm_translation/test_watsonx.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/llm_translation/test_watsonx.py b/tests/llm_translation/test_watsonx.py index d6a82b4496..ce02d3aac6 100644 --- a/tests/llm_translation/test_watsonx.py +++ b/tests/llm_translation/test_watsonx.py @@ -13,6 +13,16 @@ import pytest from typing import Optional +@pytest.fixture(autouse=True) +def watsonx_env_vars(monkeypatch): + """Set required WatsonX env vars so the provider passes validation. + Also clear WATSONX_ZENAPIKEY/WATSONX_TOKEN so they don't bypass the IAM token mock.""" + monkeypatch.setenv("WATSONX_URL", "https://us-south.ml.cloud.ibm.com") + monkeypatch.setenv("WATSONX_PROJECT_ID", "test-project-id") + monkeypatch.delenv("WATSONX_ZENAPIKEY", raising=False) + monkeypatch.delenv("WATSONX_TOKEN", raising=False) + + @pytest.fixture def watsonx_chat_completion_call(): def _call(