File size: 1,399 Bytes
cd8bd0a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { test } from "node:test";
import assert from "node:assert/strict";
import { resolveQwenTarget, buildQwenSettings } from "../../../bin/cli/commands/setup-qwen.mjs";

test("resolveQwenTarget ensures /v1", () => {
  assert.equal(resolveQwenTarget({ remote: "http://vps:20128" }).baseUrl, "http://vps:20128/v1");
});
test("resolveQwenTarget: explicit --api-key wins", () => {
  assert.equal(resolveQwenTarget({ remote: "http://x:20128", apiKey: "sk-x" }).apiKey, "sk-x");
});
test("buildQwenSettings adds an openai modelProvider (baseUrl /v1, envKey), sets model", () => {
  const s = buildQwenSettings({}, { baseUrl: "http://vps:20128/v1", model: "glm/glm-5.2" });
  const p = s.modelProviders.find((x) => x.id === "omniroute");
  assert.equal(p.authType, "openai");
  assert.equal(p.baseUrl, "http://vps:20128/v1");
  assert.equal(p.envKey, "OMNIROUTE_API_KEY");
  assert.equal(s.model, "glm/glm-5.2");
  assert.equal(s.selectedProvider, "omniroute");
});
test("buildQwenSettings de-dupes the omniroute provider + preserves others", () => {
  const s = buildQwenSettings(
    { modelProviders: [{ id: "other" }, { id: "omniroute", baseUrl: "old" }], theme: "dark" },
    { baseUrl: "http://x/v1", model: "m" }
  );
  assert.equal(s.modelProviders.filter((p) => p.id === "omniroute").length, 1);
  assert.ok(s.modelProviders.some((p) => p.id === "other"));
  assert.equal(s.theme, "dark");
});