Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 24 additions & 21 deletions test/markdown_parser_tests.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
"use strict";

var tap = require('tap');

var path = require('path');
var fs = require('fs-extra');
var mp = require('../core/lib/markdown_parser');
var markdown_parser = new mp();

exports['markdown_parser'] = {
'parses pattern description block correctly when frontmatter not present' : function(test) {

tap.test('parses pattern description block correctly when frontmatter not present', function(test) {
//arrange
var markdownFileName = path.resolve("./test/files/_patterns/00-test/00-foo.md");
var markdownFileContents = fs.readFileSync(markdownFileName, 'utf8');
Expand All @@ -16,9 +18,10 @@ exports['markdown_parser'] = {

//assert
test.equals(returnObject.markdown, '<h2>A Simple Include</h2>\n<p>This pattern contains an include of <code>test-bar</code>. It also has this markdown file, which does not have frontmatter.</p>\n');
test.done();
},
'parses pattern description block correctly when frontmatter present' : function (test) {
test.end();
});

tap.test('parses pattern description block correctly when frontmatter present', function (test) {
//arrange
var markdownFileName = path.resolve("./test/files/_patterns/00-test/01-bar.md");
var markdownFileContents = fs.readFileSync(markdownFileName, 'utf8');
Expand All @@ -29,19 +32,19 @@ exports['markdown_parser'] = {
//assert
test.equals(returnObject.markdown, '<h2>A Simple Bit of Markup</h2>\n<p>Foo cannot get simpler than bar, amiright?</p>\n');
test.equals(returnObject.status, 'complete');
test.done();
},
'parses frontmatter only when no markdown present': function (test) {
//arrange
var markdownFileName = path.resolve("./test/files/_patterns/00-test/03-styled-atom.md");
var markdownFileContents = fs.readFileSync(markdownFileName, 'utf8');

//act
var returnObject = markdown_parser.parse(markdownFileContents);

//assert
test.equals(returnObject.markdown, '');
test.equals(returnObject.status, 'inprogress');
test.done();
}
};
test.end();
});

tap.test('parses frontmatter only when no markdown present', function (test) {
//arrange
var markdownFileName = path.resolve("./test/files/_patterns/00-test/03-styled-atom.md");
var markdownFileContents = fs.readFileSync(markdownFileName, 'utf8');

//act
var returnObject = markdown_parser.parse(markdownFileContents);

//assert
test.equals(returnObject.markdown, '');
test.equals(returnObject.status, 'inprogress');
test.end();
});