fix: improve ccproxy OAuth install hint (#55)

Co-authored-by: Dinos Papakostas <dinospk1999@gmail.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
akou
2026-03-18 16:57:06 +08:00
committed by GitHub
parent 16dc1121e4
commit 2f1622579f
2 changed files with 54 additions and 3 deletions
+19 -2
View File
@@ -334,13 +334,30 @@ class TestMaybeStartCcproxy:
mock_anthropic_env.assert_called_once()
mock_codex_env.assert_called_once()
@patch("EvoScientist.ccproxy_manager._is_editable_install", return_value=True)
@patch("EvoScientist.ccproxy_manager.is_ccproxy_available", return_value=False)
def test_openai_oauth_raises_no_binary(self, mock_avail):
def test_openai_oauth_raises_no_binary_editable(self, mock_avail, mock_edit):
config = MagicMock()
config.anthropic_auth_mode = "api_key"
config.openai_auth_mode = "oauth"
with pytest.raises(RuntimeError, match="not found"):
with pytest.raises(RuntimeError) as exc_info:
maybe_start_ccproxy(config)
msg = str(exc_info.value)
assert "ccproxy is required for OAuth mode but not found" in msg
assert "uv sync --extra oauth" in msg
assert "pip install -e '.[oauth]'" in msg
@patch("EvoScientist.ccproxy_manager._is_editable_install", return_value=False)
@patch("EvoScientist.ccproxy_manager.is_ccproxy_available", return_value=False)
def test_openai_oauth_raises_no_binary_pip(self, mock_avail, mock_edit):
config = MagicMock()
config.anthropic_auth_mode = "api_key"
config.openai_auth_mode = "oauth"
with pytest.raises(RuntimeError) as exc_info:
maybe_start_ccproxy(config)
msg = str(exc_info.value)
assert "ccproxy is required for OAuth mode but not found" in msg
assert "pip install 'evoscientist[oauth]'" in msg
@patch(
"EvoScientist.ccproxy_manager.check_ccproxy_auth",