all repos — archive/homestead @ da9ff90d3e1b1348c43cd378c0806e159a700810

My future indieweb platform

feat: Parse front matter as metadata

Alan Pearce
commit

da9ff90d3e1b1348c43cd378c0806e159a700810

parent

3bda5fcfb7a23619ba66bef029d89bbd18d2c915

1 file changed, 33 insertions(+), 0 deletions(-)

changed files
A test/modules/metadata.test.js
@@ -0,0 +1,33 @@
+const test = require('ava') +const path = require('path') + +const metadata = require('../../src/modules/metadata.js') + +test('getFileMetadata', t => { + const expected = new Map( + Object.entries({ + title: 'This is a test', + description: 'Test file', + tags: ['a', 'b'] + }) + ) + t.deepEqual( + metadata.getFileMetadata(path.resolve(__dirname, '../data/testfile.md')), + expected + ) +}) + +test('getFolderMetadata', t => { + const expected = new Map( + Object.entries({ + title: 'This is a test', + description: 'Test file', + tags: ['a', 'b'] + }) + ) + const actual = metadata.getFolderMetadata(path.resolve(__dirname, '../data/')) + t.true(Array.isArray(actual), 'must return an array') + t.true(actual.length > 0, 'must return a non-empty array') + t.is(actual[0].path, path.resolve(__dirname, '../data/testfile.md')) + t.deepEqual(actual[0].data, expected) +})