mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 07:30:43 +00:00
test: share model compat streaming fixture
This commit is contained in:
@@ -72,6 +72,15 @@ function expectSupportsStrictModeForcedOff(overrides?: Partial<Model<Api>>): voi
|
||||
expect(supportsStrictMode(normalized)).toBe(false);
|
||||
}
|
||||
|
||||
function expectNativeStreamingSupported(overrides: Partial<Model<Api>>): void {
|
||||
const model = { ...baseModel(), ...overrides };
|
||||
delete (model as { compat?: unknown }).compat;
|
||||
const normalized = normalizeModelCompat(model as Model<Api>);
|
||||
expect(supportsDeveloperRole(normalized)).toBe(false);
|
||||
expect(supportsUsageInStreaming(normalized)).toBe(true);
|
||||
expect(supportsStrictMode(normalized)).toBe(false);
|
||||
}
|
||||
|
||||
beforeEach(() => {
|
||||
providerRuntimeMocks.resolveProviderModernModelRef.mockReset();
|
||||
providerRuntimeMocks.resolveProviderModernModelRef.mockReturnValue(undefined);
|
||||
@@ -170,42 +179,24 @@ describe("normalizeModelCompat", () => {
|
||||
});
|
||||
|
||||
it("keeps supportsUsageInStreaming on for native Qwen endpoints", () => {
|
||||
const model = {
|
||||
...baseModel(),
|
||||
expectNativeStreamingSupported({
|
||||
provider: "qwen",
|
||||
baseUrl: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
|
||||
};
|
||||
delete (model as { compat?: unknown }).compat;
|
||||
const normalized = normalizeModelCompat(model);
|
||||
expect(supportsDeveloperRole(normalized)).toBe(false);
|
||||
expect(supportsUsageInStreaming(normalized)).toBe(true);
|
||||
expect(supportsStrictMode(normalized)).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
it("keeps supportsUsageInStreaming on for DashScope-compatible endpoints regardless of provider id", () => {
|
||||
const model = {
|
||||
...baseModel(),
|
||||
expectNativeStreamingSupported({
|
||||
provider: "custom-qwen",
|
||||
baseUrl: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
|
||||
};
|
||||
delete (model as { compat?: unknown }).compat;
|
||||
const normalized = normalizeModelCompat(model);
|
||||
expect(supportsDeveloperRole(normalized)).toBe(false);
|
||||
expect(supportsUsageInStreaming(normalized)).toBe(true);
|
||||
expect(supportsStrictMode(normalized)).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
it("keeps supportsUsageInStreaming on for Moonshot-native endpoints regardless of provider id", () => {
|
||||
const model = {
|
||||
...baseModel(),
|
||||
expectNativeStreamingSupported({
|
||||
provider: "custom-kimi",
|
||||
baseUrl: "https://api.moonshot.ai/v1",
|
||||
};
|
||||
delete (model as { compat?: unknown }).compat;
|
||||
const normalized = normalizeModelCompat(model);
|
||||
expect(supportsDeveloperRole(normalized)).toBe(false);
|
||||
expect(supportsUsageInStreaming(normalized)).toBe(true);
|
||||
expect(supportsStrictMode(normalized)).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
it("leaves native api.openai.com model untouched", () => {
|
||||
|
||||
Reference in New Issue
Block a user