Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
import { describe, expect, it } from "vitest";
import { resolveEmojiAndHomepage } from "./entry-metadata.js";
describe("shared/entry-metadata", () => {
it("prefers metadata emoji and homepage when present", () => {
expect(
resolveEmojiAndHomepage({
metadata: { emoji: "", homepage: "
https://openclaw.ai " },
frontmatter: { emoji: "", homepage: "
https://example.com" },
}),
).toEqual({
emoji: "",
homepage: "
https://openclaw.ai",
});
});
it("keeps metadata precedence even when metadata values are blank", () => {
expect(
resolveEmojiAndHomepage({
metadata: { emoji: "", homepage: " " },
frontmatter: { emoji: "", homepage: "
https://example.com" },
}),
).toEqual({});
});
it("falls back through frontmatter homepage aliases and drops blanks", () => {
expect(
resolveEmojiAndHomepage({
frontmatter: { emoji: "", website: "
https://docs.openclaw.ai " },
}),
).toEqual({
emoji: "",
homepage: "
https://docs.openclaw.ai",
});
expect(
resolveEmojiAndHomepage({
metadata: { homepage: " " },
frontmatter: { url: " " },
}),
).toEqual({});
expect(
resolveEmojiAndHomepage({
frontmatter: { url: "
https://openclaw.ai/install " },
}),
).toEqual({
homepage: "
https://openclaw.ai/install",
});
});
it("does not fall back once frontmatter homepage aliases are present but blank", () => {
expect(
resolveEmojiAndHomepage({
frontmatter: {
homepage: " ",
website: "
https://docs.openclaw.ai",
url: "
https://openclaw.ai/install",
},
}),
).toEqual({});
});
});