mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-16 03:31:10 +00:00
35 lines
1.2 KiB
TypeScript
35 lines
1.2 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import {
|
|
applyQwenNativeStreamingUsageCompat,
|
|
buildQwenProvider,
|
|
QWEN_BASE_URL,
|
|
QWEN_DEFAULT_MODEL_ID,
|
|
} from "./api.js";
|
|
|
|
describe("qwen provider catalog", () => {
|
|
it("builds the bundled Qwen provider defaults", () => {
|
|
const provider = buildQwenProvider();
|
|
|
|
expect(provider.baseUrl).toBe(QWEN_BASE_URL);
|
|
expect(provider.api).toBe("openai-completions");
|
|
expect(provider.models?.length).toBeGreaterThan(0);
|
|
expect(provider.models?.find((model) => model.id === QWEN_DEFAULT_MODEL_ID)).toBeTruthy();
|
|
expect(provider.models?.find((model) => model.id === "qwen3.6-plus")).toBeTruthy();
|
|
});
|
|
|
|
it("opts native Qwen baseUrls into streaming usage only inside the extension", () => {
|
|
const nativeProvider = applyQwenNativeStreamingUsageCompat(buildQwenProvider());
|
|
expect(
|
|
nativeProvider.models?.every((model) => model.compat?.supportsUsageInStreaming === true),
|
|
).toBe(true);
|
|
|
|
const customProvider = applyQwenNativeStreamingUsageCompat({
|
|
...buildQwenProvider(),
|
|
baseUrl: "https://proxy.example.com/v1",
|
|
});
|
|
expect(
|
|
customProvider.models?.some((model) => model.compat?.supportsUsageInStreaming === true),
|
|
).toBe(false);
|
|
});
|
|
});
|