From 953ad4d9c2f8688f34d798b8f650cf50acafd723 Mon Sep 17 00:00:00 2001 From: Asko Nõmm Date: Sat, 25 Jan 2025 22:07:57 +0200 Subject: Implement FrontMatter parsing. --- src/flatmatter.test.ts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/flatmatter.test.ts') diff --git a/src/flatmatter.test.ts b/src/flatmatter.test.ts index 4c349aa..bbe26d9 100644 --- a/src/flatmatter.test.ts +++ b/src/flatmatter.test.ts @@ -1,16 +1,22 @@ -import FlatMatter from "./flatmatter"; +import FlatMatter from "./flatmatter.ts"; import {assert} from "vitest"; +import ToObject from "./serializers/to_object.ts"; test('Line has no value separator', () => { - expect(() => new FlatMatter('test')) - .toThrowError("Line on index 0 doesn't have a value separator."); + assert.throws(() => new FlatMatter('test'), "Line on index 0 doesn't have a value separator."); }) test('Line can only have one value separator', () => { - expect(() => new FlatMatter('test: this: that')) - .toThrowError("Line on index 0 has multiple value separators.") + assert.throws(() => new FlatMatter('test: this: that'), 'Line on index 0 has multiple value separators.') }) test('String values can have colon characters', () => { assert.doesNotThrow(() => new FlatMatter('test: "this : that"'), Error) +}) + +test('FrontMatter creates a new content entry', () => { + const fm = new FlatMatter(`---\nthis: true\n---\n\nMarkdown goes here.\n\nAnd here.`); + const result = fm.serialize(new ToObject()); + + assert.deepEqual(result, {"this": true, "content": "Markdown goes here.\n\nAnd here."}); }) \ No newline at end of file -- cgit v1.2.3