mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-27 12:56:01 -06:00
f43544f752
* refactor: remove vestigial indirection * test: update Slack runtime API guard
73 lines
2.0 KiB
TypeScript
73 lines
2.0 KiB
TypeScript
// Voice Call tests cover response model plugin behavior.
|
|
import { describe, expect, it } from "vitest";
|
|
import type { OpenClawPluginApi } from "../api.js";
|
|
import { VoiceCallConfigSchema } from "./config.js";
|
|
import { resolveVoiceResponseModel } from "./response-model.js";
|
|
|
|
const agentRuntime = {
|
|
defaults: {
|
|
provider: "together",
|
|
model: "Qwen/Qwen2.5-7B-Instruct-Turbo",
|
|
},
|
|
} as unknown as OpenClawPluginApi["runtime"]["agent"];
|
|
|
|
describe("resolveVoiceResponseModel", () => {
|
|
it("falls back to the runtime default model", () => {
|
|
expect(
|
|
resolveVoiceResponseModel({
|
|
voiceConfig: VoiceCallConfigSchema.parse({}),
|
|
agentRuntime,
|
|
}),
|
|
).toEqual({
|
|
modelRef: "together/Qwen/Qwen2.5-7B-Instruct-Turbo",
|
|
provider: "together",
|
|
model: "Qwen/Qwen2.5-7B-Instruct-Turbo",
|
|
});
|
|
});
|
|
|
|
it("uses an explicit provider/model ref", () => {
|
|
expect(
|
|
resolveVoiceResponseModel({
|
|
voiceConfig: VoiceCallConfigSchema.parse({
|
|
responseModel: "openai/gpt-5.4-mini",
|
|
}),
|
|
agentRuntime,
|
|
}),
|
|
).toEqual({
|
|
modelRef: "openai/gpt-5.4-mini",
|
|
provider: "openai",
|
|
model: "gpt-5.4-mini",
|
|
});
|
|
});
|
|
|
|
it("uses the runtime default provider for bare model overrides", () => {
|
|
expect(
|
|
resolveVoiceResponseModel({
|
|
voiceConfig: VoiceCallConfigSchema.parse({
|
|
responseModel: "meta-llama/Llama-4-Scout-17B-16E-Instruct",
|
|
}),
|
|
agentRuntime,
|
|
}),
|
|
).toEqual({
|
|
modelRef: "meta-llama/Llama-4-Scout-17B-16E-Instruct",
|
|
provider: "meta-llama",
|
|
model: "Llama-4-Scout-17B-16E-Instruct",
|
|
});
|
|
});
|
|
|
|
it("keeps legacy single-segment overrides on the runtime default provider", () => {
|
|
expect(
|
|
resolveVoiceResponseModel({
|
|
voiceConfig: VoiceCallConfigSchema.parse({
|
|
responseModel: "gpt-5.4-mini",
|
|
}),
|
|
agentRuntime,
|
|
}),
|
|
).toEqual({
|
|
modelRef: "gpt-5.4-mini",
|
|
provider: "together",
|
|
model: "gpt-5.4-mini",
|
|
});
|
|
});
|
|
});
|