Repository navigation
Expand file tree
/
Copy pathapp.test.js
More file actions
52 lines (46 loc) · 1.47 KB
/
Copy pathapp.test.js
File metadata and controls
52 lines (46 loc) · 1.47 KB
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
const test = require("node:test");
const assert = require("node:assert/strict");
const {
buildImageGenerationRequest,
joinUrl,
extractImageResults,
} = require("./app.js");
test("joinUrl combines baseUrl and endpoint", () => {
assert.equal(
joinUrl("https://www.micuapi.ai/v1/", "/images/generations"),
"https://www.micuapi.ai/v1/images/generations",
);
});
test("buildImageGenerationRequest creates an OpenAI-compatible image request", () => {
const request = buildImageGenerationRequest({
baseUrl: "https://www.micuapi.ai/v1",
endpoint: "/images/generations",
apiKey: "sk-test",
model: "image2",
prompt: "a tiny robot painter",
size: "1024x1024",
responseFormat: "url",
});
assert.equal(request.url, "https://www.micuapi.ai/v1/images/generations");
assert.equal(request.options.method, "POST");
assert.equal(request.options.headers.Authorization, "Bearer sk-test");
assert.deepEqual(JSON.parse(request.options.body), {
model: "image2",
prompt: "a tiny robot painter",
size: "1024x1024",
n: 1,
response_format: "url",
});
});
test("extractImageResults supports url and base64 OpenAI-style responses", () => {
const results = extractImageResults({
data: [
{ url: "https://example.com/image.png" },
{ b64_json: "ZmFrZS1pbWFnZQ==" },
],
});
assert.deepEqual(results, [
{ type: "url", value: "https://example.com/image.png" },
{ type: "base64", value: "ZmFrZS1pbWFnZQ==" },
]);
});