mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-29 01:42:21 +00:00
test(llm): add live e2e test for OpenRouter
Add openrouter_complete in fabro-llm integration tests, gated by OPENROUTER_API_KEY. Verifies the OpenAI-compatible adapter configured with OpenRouter's base URL and provider name "openrouter" can complete a request against the live API and return usable token counts. Uses deepseek/deepseek-v4-flash as the live model since it's the cheapest entry in the catalog. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f326b9421a
commit
7709cbefcb
1 changed files with 21 additions and 1 deletions
|
|
@ -7,7 +7,9 @@ use std::sync::Arc;
|
|||
|
||||
use fabro_llm::error::ProviderErrorKind;
|
||||
use fabro_llm::provider::ProviderAdapter;
|
||||
use fabro_llm::providers::{AnthropicAdapter, GeminiAdapter, OpenAiAdapter};
|
||||
use fabro_llm::providers::{
|
||||
AnthropicAdapter, GeminiAdapter, OpenAiAdapter, OpenAiCompatibleAdapter,
|
||||
};
|
||||
use fabro_llm::types::{FinishReason, Message, Request};
|
||||
use fabro_model::Catalog;
|
||||
use fabro_static::EnvVars;
|
||||
|
|
@ -174,6 +176,24 @@ async fn gemini_complete() {
|
|||
assert_eq!(response.provider, "gemini");
|
||||
}
|
||||
|
||||
#[fabro_macros::e2e_test(live("OPENROUTER_API_KEY"))]
|
||||
async fn openrouter_complete() {
|
||||
let api_key =
|
||||
std::env::var(EnvVars::OPENROUTER_API_KEY).expect("OPENROUTER_API_KEY must be set");
|
||||
let adapter = OpenAiCompatibleAdapter::new(api_key, "https://openrouter.ai/api/v1")
|
||||
.with_name("openrouter");
|
||||
let request = make_request("deepseek/deepseek-v4-flash");
|
||||
let response = adapter.complete(&request).await.unwrap();
|
||||
|
||||
assert!(
|
||||
!response.text().is_empty(),
|
||||
"response text should not be empty"
|
||||
);
|
||||
assert!(response.usage.input_tokens > 0);
|
||||
assert!(response.usage.output_tokens > 0);
|
||||
assert_eq!(response.provider, "openrouter");
|
||||
}
|
||||
|
||||
async fn run_multi_turn_cache_test(
|
||||
adapter: &dyn ProviderAdapter,
|
||||
model: &str,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue