summaryrefslogtreecommitdiff
path: root/src/test/kotlin/moe/nea/blog/gen/HtmlGenerationTest.kt
blob: baee5d6e75b57082acc1065eb497d5ba67c2a215 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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)
	}
}