mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-27 00:17:48 +00:00
47 lines
1.5 KiB
TypeScript
47 lines
1.5 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { resolveThinkingProfile } from "./provider-policy-api.js";
|
|
|
|
describe("amazon-bedrock provider-policy-api", () => {
|
|
it("exposes adaptive thinking for Bedrock Claude 4.6 before runtime registration", () => {
|
|
const profile = resolveThinkingProfile({
|
|
provider: "amazon-bedrock",
|
|
modelId: "amazon-bedrock/global.anthropic.claude-opus-4-6-v1",
|
|
});
|
|
|
|
expect(profile?.levels.map((level) => level.id)).toEqual([
|
|
"off",
|
|
"minimal",
|
|
"low",
|
|
"medium",
|
|
"high",
|
|
"adaptive",
|
|
]);
|
|
expect(profile?.defaultLevel).toBe("adaptive");
|
|
});
|
|
|
|
it("exposes max thinking for Bedrock Claude Opus 4.7 refs", () => {
|
|
expect(
|
|
resolveThinkingProfile({
|
|
provider: "amazon-bedrock",
|
|
modelId:
|
|
"arn:aws:bedrock:us-west-2:123456789012:inference-profile/us.anthropic.claude-opus-4-7",
|
|
})?.levels.map((level) => level.id),
|
|
).toEqual(["off", "minimal", "low", "medium", "high", "xhigh", "adaptive", "max"]);
|
|
});
|
|
|
|
it.each(["bedrock", "aws-bedrock"])("accepts provider alias %s", (provider) => {
|
|
expect(
|
|
resolveThinkingProfile({
|
|
provider,
|
|
modelId: "global.anthropic.claude-opus-4-6-v1",
|
|
})?.levels.map((level) => level.id),
|
|
).toContain("adaptive");
|
|
});
|
|
|
|
it("ignores unrelated providers", () => {
|
|
expect(
|
|
resolveThinkingProfile({ provider: "anthropic", modelId: "claude-opus-4-6" }),
|
|
).toBeNull();
|
|
});
|
|
});
|