X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FLinkedElementRenderFilterTest.kt;h=c0c83b38c11e1e7ce6d08cdfe1208c775f1420ac;hb=64127f2f691c8839757e831031a0e9c6fb702a2b;hp=20ee99a086e893ba58348f3ed9079ce2328ac066;hpb=675710fc669a9f5ccfab42296a3aa0b822539e14;p=Sone.git diff --git a/src/test/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilterTest.kt b/src/test/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilterTest.kt index 20ee99a..c0c83b3 100644 --- a/src/test/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilterTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilterTest.kt @@ -1,10 +1,11 @@ package net.pterodactylus.sone.template -import net.pterodactylus.sone.core.LinkedImage +import net.pterodactylus.sone.core.LinkedElement import net.pterodactylus.util.template.HtmlFilter import net.pterodactylus.util.template.TemplateContextFactory import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.`is` +import org.hamcrest.Matchers.nullValue import org.jsoup.Jsoup import org.junit.Test @@ -22,8 +23,23 @@ class LinkedElementRenderFilterTest { private val filter = LinkedElementRenderFilter(templateContextFactory) @Test + fun `filter returns null for objects that are not linked elements`() { + assertThat(filter.format(null, Any(), null), nullValue()) + } + + @Test + fun `filter renders loading animation for not loaded elements`() { + val html = filter.format(null, LinkedElement("KSK@gpl.png", loading = true), emptyMap()) as String + val spanNode = Jsoup.parseBodyFragment(html).body().child(0) + assertThat(spanNode.nodeName(), `is`("span")) + assertThat(spanNode.attr("class"), `is`("linked-element")) + assertThat(spanNode.attr("title"), `is`("KSK@gpl.png")) + assertThat(spanNode.attr("style"), `is`("background-image: url('images/loading-animation.gif')")) + } + + @Test fun `filter can render linked images`() { - val html = filter.format(null, LinkedImage("KSK@gpl.png"), emptyMap()) as String + val html = filter.format(null, LinkedElement("KSK@gpl.png"), emptyMap()) as String val linkNode = Jsoup.parseBodyFragment(html).body().child(0) assertThat(linkNode.nodeName(), `is`("a")) assertThat(linkNode.attr("href"), `is`("/KSK@gpl.png"))