diff options
Diffstat (limited to 'src/test/kotlin/moe')
4 files changed, 62 insertions, 17 deletions
diff --git a/src/test/kotlin/moe/nea/blog/gen/HtmlGenerationTest.kt b/src/test/kotlin/moe/nea/blog/gen/HtmlGenerationTest.kt new file mode 100644 index 0000000..baee5d6 --- /dev/null +++ b/src/test/kotlin/moe/nea/blog/gen/HtmlGenerationTest.kt @@ -0,0 +1,31 @@ +package moe.nea.blog.gen + +import moe.nea.blog.md.MarkdownElement +import moe.nea.blog.md.MarkdownParser +import kotlin.test.assertEquals + +abstract class HtmlGenerationTest { + + open fun registerGenerators(generator: MD2HtmlGenerator) { + } + + open fun registerParsers(parser: MarkdownParser) { + } + + fun assertGenerator(generatedHtml: String, markdown: MarkdownElement) { + val generator = MD2HtmlGenerator() + generator.registerDefaultGenerators() + registerGenerators(generator) + assertEquals(generatedHtml, generator.generateHtml(markdown).text) + } + + fun assertGeneratorMD(generatedHtml: String, text: String) { + val generator = MD2HtmlGenerator() + generator.registerDefaultGenerators() + registerGenerators(generator) + val parser = MarkdownParser(text) + parser.addDefaultParsers() + registerParsers(parser) + assertEquals(generatedHtml, generator.generateHtml(parser.readDocument()).text) + } +}
\ No newline at end of file diff --git a/src/test/kotlin/moe/nea/blog/gen/HtmlTest.kt b/src/test/kotlin/moe/nea/blog/gen/HtmlTest.kt index 4b76a5f..439fbeb 100644 --- a/src/test/kotlin/moe/nea/blog/gen/HtmlTest.kt +++ b/src/test/kotlin/moe/nea/blog/gen/HtmlTest.kt @@ -2,28 +2,12 @@ package moe.nea.blog.gen import moe.nea.blog.md.Bold import moe.nea.blog.md.FormatSequence -import moe.nea.blog.md.MarkdownElement -import moe.nea.blog.md.MarkdownParser import moe.nea.blog.md.Paragraph import moe.nea.blog.md.Whitespace import moe.nea.blog.md.Word import kotlin.test.Test -import kotlin.test.assertEquals -class HtmlTest { - - fun assertGenerator(generatedHtml: String, markdown: MarkdownElement) { - val generator = MD2HtmlGenerator() - generator.registerDefaultGenerators() - assertEquals(generatedHtml, generator.generateHtml(markdown).text) - } - - fun assertGeneratorMD(generatedHtml: String, text: String) { - val generator = MD2HtmlGenerator() - generator.registerDefaultGenerators() - assertEquals(generatedHtml, - generator.generateHtml(MarkdownParser(text).also { it.addDefaultParsers() }.readDocument()).text) - } +class HtmlTest : HtmlGenerationTest() { @Test fun testBiggerFile() { diff --git a/src/test/kotlin/moe/nea/blog/gen/IntegrationTest.kt b/src/test/kotlin/moe/nea/blog/gen/IntegrationTest.kt new file mode 100644 index 0000000..4d73254 --- /dev/null +++ b/src/test/kotlin/moe/nea/blog/gen/IntegrationTest.kt @@ -0,0 +1,23 @@ +package moe.nea.blog.gen + +import moe.nea.blog.md.MarkdownParser +import moe.nea.blog.md.ext.NoteBlockGenerator +import moe.nea.blog.md.ext.NoteBlockParser +import moe.nea.blog.test.util.GetResource +import kotlin.test.Test + +class IntegrationTest : HtmlGenerationTest() { + override fun registerGenerators(generator: MD2HtmlGenerator) { + generator.registerGeneratorFor(NoteBlockGenerator) + } + + override fun registerParsers(parser: MarkdownParser) { + parser.addParser(NoteBlockParser) + } + + @Test + fun testHttps() { + assertGeneratorMD(GetResource.asString("/https.html"), GetResource.asString("/https.md")) + } + +}
\ No newline at end of file diff --git a/src/test/kotlin/moe/nea/blog/test/util/GetResource.kt b/src/test/kotlin/moe/nea/blog/test/util/GetResource.kt new file mode 100644 index 0000000..49fd9cd --- /dev/null +++ b/src/test/kotlin/moe/nea/blog/test/util/GetResource.kt @@ -0,0 +1,7 @@ +package moe.nea.blog.test.util + +object GetResource { + fun asString(path: String): String { + return GetResource::class.java.getResourceAsStream(path)!!.bufferedReader().readText() + } +}
\ No newline at end of file |