1 package net.pterodactylus.sone.template
3 import net.pterodactylus.sone.core.ImageLoader
4 import net.pterodactylus.sone.core.LoadedImage
5 import net.pterodactylus.sone.test.mock
6 import net.pterodactylus.sone.text.FreenetLinkPart
7 import net.pterodactylus.sone.text.LinkPart
8 import net.pterodactylus.sone.text.PlainTextPart
9 import org.hamcrest.MatcherAssert.assertThat
10 import org.hamcrest.Matchers
12 import org.mockito.Mockito.`when`
15 * Unit test for [LinkedImagesFilter].
17 class LinkedImagesFilterTest {
19 private val imageLoader = mock<ImageLoader>()
20 private val filter = LinkedImagesFilter(imageLoader)
23 fun `filter finds all loaded freenet images`() {
25 PlainTextPart("text"),
26 LinkPart("http://link", "link"),
27 FreenetLinkPart("KSK@link", "link", false),
28 FreenetLinkPart("KSK@link.png", "link", false)
30 `when`(imageLoader.toLoadedImage("KSK@link.png")).thenReturn(LoadedImage("KSK@link.png", "image/png", 1440, 900))
31 val loadedImages = filter.format(null, parts, null)
32 assertThat(loadedImages, Matchers.contains(
33 LoadedImage("KSK@link.png", "image/png", 1440, 900)