mirror of
https://github.com/farion1231/cc-switch.git
synced 2026-05-12 06:41:05 +08:00
7cee0de784
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
69 lines
2.2 KiB
TypeScript
69 lines
2.2 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import {
|
|
opencodeProviderPresets,
|
|
opencodeNpmPackages,
|
|
OPENCODE_PRESET_MODEL_VARIANTS,
|
|
} from "@/config/opencodeProviderPresets";
|
|
|
|
describe("AWS Bedrock OpenCode Provider Presets", () => {
|
|
it("should include @ai-sdk/amazon-bedrock in npm packages", () => {
|
|
const bedrockPkg = opencodeNpmPackages.find(
|
|
(p) => p.value === "@ai-sdk/amazon-bedrock",
|
|
);
|
|
expect(bedrockPkg).toBeDefined();
|
|
expect(bedrockPkg!.label).toBe("Amazon Bedrock");
|
|
});
|
|
|
|
it("should include Bedrock model variants", () => {
|
|
const variants = OPENCODE_PRESET_MODEL_VARIANTS["@ai-sdk/amazon-bedrock"];
|
|
expect(variants).toBeDefined();
|
|
expect(variants.length).toBeGreaterThan(0);
|
|
|
|
const opusModel = variants.find((v) =>
|
|
v.id.includes("anthropic.claude-opus-4-6"),
|
|
);
|
|
expect(opusModel).toBeDefined();
|
|
});
|
|
|
|
const bedrockPreset = opencodeProviderPresets.find(
|
|
(p) => p.name === "AWS Bedrock",
|
|
);
|
|
|
|
it("should include AWS Bedrock preset", () => {
|
|
expect(bedrockPreset).toBeDefined();
|
|
});
|
|
|
|
it("Bedrock preset should use @ai-sdk/amazon-bedrock npm package", () => {
|
|
expect(bedrockPreset!.settingsConfig.npm).toBe(
|
|
"@ai-sdk/amazon-bedrock",
|
|
);
|
|
});
|
|
|
|
it("Bedrock preset should have region in options", () => {
|
|
expect(bedrockPreset!.settingsConfig.options).toHaveProperty("region");
|
|
});
|
|
|
|
it("Bedrock preset should have cloud_provider category", () => {
|
|
expect(bedrockPreset!.category).toBe("cloud_provider");
|
|
});
|
|
|
|
it("Bedrock preset should have template values for AWS credentials", () => {
|
|
expect(bedrockPreset!.templateValues).toBeDefined();
|
|
expect(bedrockPreset!.templateValues!.region).toBeDefined();
|
|
expect(bedrockPreset!.templateValues!.region.editorValue).toBe(
|
|
"us-west-2",
|
|
);
|
|
expect(bedrockPreset!.templateValues!.accessKeyId).toBeDefined();
|
|
expect(bedrockPreset!.templateValues!.secretAccessKey).toBeDefined();
|
|
});
|
|
|
|
it("Bedrock preset should include Claude models", () => {
|
|
const models = bedrockPreset!.settingsConfig.models;
|
|
expect(models).toBeDefined();
|
|
const modelIds = Object.keys(models!);
|
|
expect(
|
|
modelIds.some((id) => id.includes("anthropic.claude")),
|
|
).toBe(true);
|
|
});
|
|
});
|