Present FOLX as a music news publisher and unify site SEO

This commit is contained in:
Codex
2026-10-07 13:42:48 +02:00
parent c5c3fe290e
commit cc306921d7
14 changed files with 173 additions and 115 deletions
+20
View File
@@ -0,0 +1,20 @@
import assert from "node:assert/strict";
import { homeSchema, publisherSchema, articleModifiedTime, articleGenre, INFO_SEO } from "../shared/seo";
const home = homeSchema();
assert.equal(home["@graph"].filter(x => x["@type"] === "WebSite").length, 1);
assert.equal(publisherSchema()["@type"], "NewsMediaOrganization");
assert.ok(JSON.stringify(home).includes("/search?q="));
assert.ok(!JSON.stringify(home).includes("/suche"));
assert.ok(publisherSchema().sameAs.includes("https://www.youtube.com/@folxmtv"));
const pub = "2026-01-01T12:00:00.000Z";
assert.equal(articleModifiedTime("", pub), pub);
assert.equal(articleModifiedTime("<!--folx-updated:invalid-->", pub), pub);
assert.equal(articleModifiedTime("<!--folx-updated:2025-01-01-->", pub), pub);
assert.equal(articleModifiedTime("<!--folx-updated:2099-01-01-->", pub), pub);
assert.equal(articleModifiedTime("<!--folx-updated:2026-02-01-->", pub), "2026-02-01T00:00:00.000Z");
assert.equal(articleGenre("<!--folx-badge:STAR NEWS-->").section, "Star News");
assert.ok(!articleGenre("<!--folx-badge:STAR NEWS-->").words.includes("Schlager"));
assert.equal(articleGenre("").section, "Musik News");
assert.equal(INFO_SEO["/ueber-uns"].type, "AboutPage");
assert.equal(INFO_SEO["/kontakt"].type, "ContactPage");
console.log("SEO metadata checks passed");