mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-26 09:52:11 +03:00
test(content): add unit tests for 5 new content providers
16 tests covering: - Provider registrations (haiper, leonardo, ideogram, suno, udio) - VIDEO_PROVIDER_IDS includes haiper, leonardo - Video registry entries (haiper-video, leonardo-video) - Image registry entries (haiper-image, leonardo-image, ideogram-image) - Music registry entries (suno-music, udio-music) - Handler function exports exist Co-Authored-By: OpenClaude (mimo-v2.5-pro) <openclaude@gitlawb.com>
This commit is contained in:
109
tests/unit/new-content-providers.test.ts
Normal file
109
tests/unit/new-content-providers.test.ts
Normal file
@@ -0,0 +1,109 @@
|
||||
import test from "node:test";
|
||||
import assert from "node:assert/strict";
|
||||
|
||||
// ─── Provider Registrations ─────────────────────────────────────────────────
|
||||
|
||||
test("haiper provider is registered", async () => {
|
||||
const { APIKEY_PROVIDERS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(APIKEY_PROVIDERS.haiper, "haiper should be in APIKEY_PROVIDERS");
|
||||
assert.equal(APIKEY_PROVIDERS.haiper.id, "haiper");
|
||||
assert.equal(APIKEY_PROVIDERS.haiper.alias, "hp");
|
||||
});
|
||||
|
||||
test("leonardo provider is registered", async () => {
|
||||
const { APIKEY_PROVIDERS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(APIKEY_PROVIDERS.leonardo, "leonardo should be in APIKEY_PROVIDERS");
|
||||
assert.equal(APIKEY_PROVIDERS.leonardo.id, "leonardo");
|
||||
});
|
||||
|
||||
test("ideogram provider is registered", async () => {
|
||||
const { APIKEY_PROVIDERS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(APIKEY_PROVIDERS.ideogram, "ideogram should be in APIKEY_PROVIDERS");
|
||||
assert.equal(APIKEY_PROVIDERS.ideogram.id, "ideogram");
|
||||
});
|
||||
|
||||
test("suno provider is registered", async () => {
|
||||
const { APIKEY_PROVIDERS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(APIKEY_PROVIDERS.suno, "suno should be in APIKEY_PROVIDERS");
|
||||
assert.equal(APIKEY_PROVIDERS.suno.id, "suno");
|
||||
});
|
||||
|
||||
test("udio provider is registered", async () => {
|
||||
const { APIKEY_PROVIDERS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(APIKEY_PROVIDERS.udio, "udio should be in APIKEY_PROVIDERS");
|
||||
assert.equal(APIKEY_PROVIDERS.udio.id, "udio");
|
||||
});
|
||||
|
||||
// ─── VIDEO_PROVIDER_IDS ─────────────────────────────────────────────────────
|
||||
|
||||
test("VIDEO_PROVIDER_IDS includes haiper and leonardo", async () => {
|
||||
const { VIDEO_PROVIDER_IDS } = await import("../../src/shared/constants/providers.ts");
|
||||
assert.ok(VIDEO_PROVIDER_IDS.has("haiper"), "haiper should be in VIDEO_PROVIDER_IDS");
|
||||
assert.ok(VIDEO_PROVIDER_IDS.has("leonardo"), "leonardo should be in VIDEO_PROVIDER_IDS");
|
||||
});
|
||||
|
||||
// ─── Video Registry ─────────────────────────────────────────────────────────
|
||||
|
||||
test("haiper video provider is in video registry", async () => {
|
||||
const { VIDEO_PROVIDERS } = await import("../../open-sse/config/videoRegistry.ts");
|
||||
assert.ok(VIDEO_PROVIDERS.haiper, "haiper should be in VIDEO_PROVIDERS");
|
||||
assert.equal(VIDEO_PROVIDERS.haiper.format, "haiper-video");
|
||||
assert.ok(VIDEO_PROVIDERS.haiper.models.length > 0);
|
||||
});
|
||||
|
||||
test("leonardo video provider is in video registry", async () => {
|
||||
const { VIDEO_PROVIDERS } = await import("../../open-sse/config/videoRegistry.ts");
|
||||
assert.ok(VIDEO_PROVIDERS.leonardo, "leonardo should be in VIDEO_PROVIDERS");
|
||||
assert.equal(VIDEO_PROVIDERS.leonardo.format, "leonardo-video");
|
||||
});
|
||||
|
||||
// ─── Image Registry ─────────────────────────────────────────────────────────
|
||||
|
||||
test("haiper image provider is in image registry", async () => {
|
||||
const { IMAGE_PROVIDERS } = await import("../../open-sse/config/imageRegistry.ts");
|
||||
assert.ok(IMAGE_PROVIDERS.haiper, "haiper should be in IMAGE_PROVIDERS");
|
||||
assert.equal(IMAGE_PROVIDERS.haiper.format, "haiper-image");
|
||||
});
|
||||
|
||||
test("leonardo image provider is in image registry", async () => {
|
||||
const { IMAGE_PROVIDERS } = await import("../../open-sse/config/imageRegistry.ts");
|
||||
assert.ok(IMAGE_PROVIDERS.leonardo, "leonardo should be in IMAGE_PROVIDERS");
|
||||
assert.equal(IMAGE_PROVIDERS.leonardo.format, "leonardo-image");
|
||||
});
|
||||
|
||||
test("ideogram image provider is in image registry", async () => {
|
||||
const { IMAGE_PROVIDERS } = await import("../../open-sse/config/imageRegistry.ts");
|
||||
assert.ok(IMAGE_PROVIDERS.ideogram, "ideogram should be in IMAGE_PROVIDERS");
|
||||
assert.equal(IMAGE_PROVIDERS.ideogram.format, "ideogram-image");
|
||||
});
|
||||
|
||||
// ─── Music Registry ─────────────────────────────────────────────────────────
|
||||
|
||||
test("suno music provider is in music registry", async () => {
|
||||
const { MUSIC_PROVIDERS } = await import("../../open-sse/config/musicRegistry.ts");
|
||||
assert.ok(MUSIC_PROVIDERS.suno, "suno should be in MUSIC_PROVIDERS");
|
||||
assert.equal(MUSIC_PROVIDERS.suno.format, "suno-music");
|
||||
});
|
||||
|
||||
test("udio music provider is in music registry", async () => {
|
||||
const { MUSIC_PROVIDERS } = await import("../../open-sse/config/musicRegistry.ts");
|
||||
assert.ok(MUSIC_PROVIDERS.udio, "udio should be in MUSIC_PROVIDERS");
|
||||
assert.equal(MUSIC_PROVIDERS.udio.format, "udio-music");
|
||||
});
|
||||
|
||||
// ─── Handler Functions Exist ─────────────────────────────────────────────────
|
||||
|
||||
test("videoGeneration handler has haiper-video dispatch", async () => {
|
||||
const mod = await import("../../open-sse/handlers/videoGeneration.ts");
|
||||
assert.equal(typeof mod.handleVideoGeneration, "function");
|
||||
});
|
||||
|
||||
test("imageGeneration handler has ideogram-image dispatch", async () => {
|
||||
const mod = await import("../../open-sse/handlers/imageGeneration.ts");
|
||||
assert.equal(typeof mod.handleImageGeneration, "function");
|
||||
});
|
||||
|
||||
test("musicGeneration handler has suno-music dispatch", async () => {
|
||||
const mod = await import("../../open-sse/handlers/musicGeneration.ts");
|
||||
assert.equal(typeof mod.handleMusicGeneration, "function");
|
||||
});
|
||||
Reference in New Issue
Block a user