import "./syscall_mock.ts"; import { parse } from "$common/markdown_parser/parse_tree.ts"; import { assertEquals } from "@std/assert"; import { extractFeedItems } from "./feed.ts"; import { extendedMarkdownLanguage } from "$common/markdown_parser/parser.ts"; const feedSample1 = `--- test: ignore me --- # My first item $myid Some text --- # My second item [id: myid2][otherAttribute: 42] And some text --- Completely free form `; Deno.test("Test feed parsing", async () => { // Ad hoc added the NamedAnchor extension from the core plug-in inline here const tree = parse(extendedMarkdownLanguage, feedSample1); const items = await extractFeedItems(tree); assertEquals(items.length, 3); assertEquals(items[0], { id: "myid", text: "Some text", title: "My first item", }); assertEquals(items[1], { id: "myid2", attributes: { otherAttribute: 42, }, title: "My second item", text: "And some text", }); assertEquals(items[2].text, "Completely free form"); });