feat: LLM 解耦 bot、RSS 外置与内容过滤
daily 自建 Cursor bridge;DAILY_LLM_PROVIDER 控制后端;config/feeds.yaml 与 sensitive_words 可配置。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
33
tests/test_llm_client.py
Normal file
33
tests/test_llm_client.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import pytest
|
||||
|
||||
|
||||
def test_resolve_llm_backend_prefers_cursor_in_agent_mode(monkeypatch):
|
||||
import daily.llm_client as llm
|
||||
|
||||
monkeypatch.setenv("DAILY_REPORT_MODE", "agent")
|
||||
monkeypatch.setenv("CURSOR_API_KEY", "cursor_test")
|
||||
monkeypatch.setenv("DAILY_LLM_API_KEY", "openai_test")
|
||||
monkeypatch.delenv("DAILY_LLM_PROVIDER", raising=False)
|
||||
assert llm.resolve_llm_backend() == "cursor"
|
||||
|
||||
|
||||
def test_resolve_llm_backend_openai_override(monkeypatch):
|
||||
import daily.llm_client as llm
|
||||
|
||||
monkeypatch.setenv("DAILY_REPORT_MODE", "agent")
|
||||
monkeypatch.setenv("DAILY_LLM_PROVIDER", "openai")
|
||||
monkeypatch.setenv("CURSOR_API_KEY", "cursor_test")
|
||||
monkeypatch.setenv("DAILY_LLM_API_KEY", "openai_test")
|
||||
assert llm.resolve_llm_backend() == "openai"
|
||||
|
||||
|
||||
def test_resolve_llm_backend_classic_defaults_openai(monkeypatch):
|
||||
import daily.llm_client as llm
|
||||
|
||||
monkeypatch.setenv("DAILY_REPORT_MODE", "classic")
|
||||
monkeypatch.setenv("CURSOR_API_KEY", "cursor_test")
|
||||
monkeypatch.setenv("DAILY_LLM_API_KEY", "openai_test")
|
||||
monkeypatch.delenv("DAILY_LLM_PROVIDER", raising=False)
|
||||
assert llm.resolve_llm_backend() == "openai"
|
||||
Reference in New Issue
Block a user