fix(core): update

This commit is contained in:
Philipp Kunz 2019-09-04 15:45:18 +02:00
parent 8db0cac292
commit fdc9cb6784
3 changed files with 59 additions and 1 deletions

29
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,29 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "current file",
"type": "node",
"request": "launch",
"args": [
"${relativeFile}"
],
"runtimeArgs": ["-r", "@gitzone/tsrun"],
"cwd": "${workspaceRoot}",
"protocol": "inspector",
"internalConsoleOptions": "openOnSessionStart"
},
{
"name": "test.ts",
"type": "node",
"request": "launch",
"args": [
"test/test.ts"
],
"runtimeArgs": ["-r", "@gitzone/tsrun"],
"cwd": "${workspaceRoot}",
"protocol": "inspector",
"internalConsoleOptions": "openOnSessionStart"
}
]
}

View File

@ -23,7 +23,23 @@ tap.test('should stringify data', async () => {
}); });
tap.test('should parse a normal frontmatter file', async () => { tap.test('should parse a normal frontmatter file', async () => {
const normalFile = `---
heythere: awesome
---
really
`;
let result = testSmartfm.parse(normalFile);
expect(result.data.heythere).to.equal('awesome')
});
tap.test('should parse a commented out frontmatter file', async () => {
const commentedFile = `# ---
# heythere: awesome
# ---
really
`;
let result = testSmartfm.parseFromComments('# ', commentedFile);
console.log(result);
}); });
tap.start(); tap.start();

View File

@ -29,4 +29,17 @@ export class Smartfm {
parse(stringToParse: string) { parse(stringToParse: string) {
return grayMatter(stringToParse); return grayMatter(stringToParse);
} }
/**
* parse from commnets
*/
parseFromComments(commentStart: string, stringToParse: string) {
const diffFunc = (diffMe, diffBy) => diffMe.split(diffBy).join('');
let lines = stringToParse.split('\n');
lines = lines.map(line => {
return diffFunc(line, commentStart);
});
const cleanedString = lines.join('\n');
return this.parse(cleanedString);
}
} }