🔀 Merge branch 'release/v82'
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / test / TestLoaders.kt
1 package net.pterodactylus.sone.test
2
3 import net.pterodactylus.sone.main.*
4 import net.pterodactylus.util.template.*
5 import net.pterodactylus.util.web.*
6
7 /**
8  * [Loaders] implementation for use in tests. Use [templates] to control what templates are
9  * returned by the [loadTemplate] method.
10  */
11 class TestLoaders : Loaders {
12
13         val templates = mutableMapOf<String, Template>()
14
15         override fun loadTemplate(path: String) = templates[path] ?: Template()
16
17         override fun <REQ : Request> loadStaticPage(basePath: String, prefix: String, mimeType: String) = TestPage<REQ>()
18
19         override fun getTemplateProvider() = TemplateProvider { _, _ -> Template() }
20
21 }