From 817a7d6a4eddb2eea305779333e27105abebeb87 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 4 Feb 2015 19:26:49 +0000 Subject: Remove duplication of markdown headings --- lib/writers/markdown-writer.js | 16 ++++++++++------ tests/writers/markdown-writer.tests.js | 32 -------------------------------- 2 files changed, 10 insertions(+), 38 deletions(-) diff --git a/lib/writers/markdown-writer.js b/lib/writers/markdown-writer.js index f39e018..b4fbb8e 100644 --- a/lib/writers/markdown-writer.js +++ b/lib/writers/markdown-writer.js @@ -73,12 +73,6 @@ var htmlmarkdown = { // paragraphs elements use three line feeds to close // this prevents them being caught by collapsing list elements in `asString` // while still allowing them to be collapsed when multiple empty lines are removed - "h1": new markdownElement("# ", "\n\n\n"), - "h2": new markdownElement("## ", "\n\n\n"), - "h3": new markdownElement("### ", "\n\n\n"), - "h4": new markdownElement("#### ", "\n\n\n"), - "h5": new markdownElement("##### ", "\n\n\n"), - "h6": new markdownElement("###### ", "\n\n\n"), "p": new markdownElement("", "\n\n\n"), "br": new markdownElement("", " \n"), "ul": new markdownList(), @@ -90,6 +84,16 @@ var htmlmarkdown = { "img": new markdownImage(), }; +(function() { + for (var i = 1; i <= 6; i++) { + htmlmarkdown["h" + i] = new markdownElement(repeatString("#", i) + " ", "\n\n\n"); + } +})(); + +function repeatString(value, count) { + return new Array(count + 1).join(value); +} + function markdownWriter() { var fragments = []; var listStack = []; diff --git a/tests/writers/markdown-writer.tests.js b/tests/writers/markdown-writer.tests.js index 7ed5681..a755423 100644 --- a/tests/writers/markdown-writer.tests.js +++ b/tests/writers/markdown-writer.tests.js @@ -20,38 +20,6 @@ describe('markdown-writer', function() { return assert.equal(writer.asString(), "# Hello\n\n"); }); - test('can generate a level 2 heading', function() { - var writer = mdWriter.writer(); - writer.open("h2"); - writer.text("Hello"); - writer.close("h2"); - return assert.equal(writer.asString(), "## Hello\n\n"); - }); - - test('can generate a level 3 heading', function() { - var writer = mdWriter.writer(); - writer.open("h3"); - writer.text("Hello"); - writer.close("h3"); - return assert.equal(writer.asString(), "### Hello\n\n"); - }); - - test('can generate a level 4 heading', function() { - var writer = mdWriter.writer(); - writer.open("h4"); - writer.text("Hello"); - writer.close("h4"); - return assert.equal(writer.asString(), "#### Hello\n\n"); - }); - - test('can generate a level 5 heading', function() { - var writer = mdWriter.writer(); - writer.open("h5"); - writer.text("Hello"); - writer.close("h5"); - return assert.equal(writer.asString(), "##### Hello\n\n"); - }); - test('can generate a level 6 heading', function() { var writer = mdWriter.writer(); writer.open("h6"); -- cgit v1.2.3