1 package net.pterodactylus.sone.template
3 import net.pterodactylus.sone.core.LinkedElement
4 import net.pterodactylus.util.template.HtmlFilter
5 import net.pterodactylus.util.template.TemplateContextFactory
6 import org.hamcrest.MatcherAssert.assertThat
7 import org.hamcrest.Matchers.`is`
12 * Unit test for [LinkedElementRenderFilter].
14 class LinkedElementRenderFilterTest {
16 private val templateContextFactory = TemplateContextFactory()
19 templateContextFactory.addFilter("html", HtmlFilter())
22 private val filter = LinkedElementRenderFilter(templateContextFactory)
25 fun `filter can render linked images`() {
26 val html = filter.format(null, LinkedElement("KSK@gpl.png"), emptyMap<String, Any?>()) as String
27 val linkNode = Jsoup.parseBodyFragment(html).body().child(0)
28 assertThat(linkNode.nodeName(), `is`("a"))
29 assertThat(linkNode.attr("href"), `is`("/KSK@gpl.png"))
30 val spanNode = linkNode.child(0)
31 assertThat(spanNode.nodeName(), `is`("span"))
32 assertThat(spanNode.attr("class"), `is`("linked-element"))
33 assertThat(spanNode.attr("title"), `is`("KSK@gpl.png"))
34 assertThat(spanNode.attr("style"), `is`("background-image: url('/KSK@gpl.png')"))