Files
songs2vid/scripts/titles.test.ts
T
Atakan Doğan ÖzbanandCursor 925aadae75 Strip Songs2VID to a payment-free self-hosted OSS core.
Remove Stripe/billing/pricing/marketing, simplify schema and entitlements for unlimited self-host use, and keep auth, encode, and YouTube upload.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 06:52:00 +02:00

24 lines
839 B
TypeScript

import assert from "node:assert/strict";
import {
resolveBurnedSongTitle,
resolveYouTubeTitle,
validateYouTubeTitle,
} from "../lib/titles";
assert.equal(
resolveYouTubeTitle({ title: "My Video", songTitle: "Song", artist: "Artist" }),
"My Video",
);
assert.equal(
resolveYouTubeTitle({ title: "", songTitle: "Song", artist: "Artist" }),
"Artist - Song",
);
assert.equal(resolveYouTubeTitle({ title: "", songTitle: "Song" }), "Song");
assert.equal(resolveBurnedSongTitle({ songTitle: "Track" }), "Track");
assert.equal(resolveBurnedSongTitle({ title: "YouTube only" }, "Fallback"), "Fallback");
assert.equal(validateYouTubeTitle({ title: "Ok" }), null);
assert.ok(validateYouTubeTitle({ title: "" }));
assert.equal(validateYouTubeTitle({ title: "", songTitle: "S", artist: "A" }), null);
console.log("titles.test.ts: ok");