X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FKnownSonesPageTest.kt;h=23987b64b3a4c3f28fcce46b6d70765ef97f8dd0;hp=bc46b9d6887b7da9f61b0ae67f9d7bf877199931;hb=HEAD;hpb=3db634e425d3482bcf00dfd82e4b0d46785d5959 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/pages/KnownSonesPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/pages/KnownSonesPageTest.kt index bc46b9d..23987b6 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/pages/KnownSonesPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/pages/KnownSonesPageTest.kt @@ -1,30 +1,20 @@ package net.pterodactylus.sone.web.pages -import net.pterodactylus.sone.data.Album -import net.pterodactylus.sone.data.Image -import net.pterodactylus.sone.data.Post -import net.pterodactylus.sone.data.PostReply -import net.pterodactylus.sone.data.Profile -import net.pterodactylus.sone.data.Sone -import net.pterodactylus.sone.freenet.wot.Identity -import net.pterodactylus.sone.freenet.wot.OwnIdentity -import net.pterodactylus.sone.test.getInstance -import net.pterodactylus.sone.test.mock -import net.pterodactylus.sone.test.whenever -import net.pterodactylus.sone.utils.Pagination -import net.pterodactylus.sone.web.baseInjector +import net.pterodactylus.sone.data.* +import net.pterodactylus.sone.data.impl.* +import net.pterodactylus.sone.freenet.wot.* +import net.pterodactylus.sone.test.* +import net.pterodactylus.sone.utils.* +import net.pterodactylus.sone.web.* import net.pterodactylus.sone.web.page.* -import org.hamcrest.MatcherAssert.assertThat -import org.hamcrest.Matchers.contains -import org.hamcrest.Matchers.equalTo -import org.hamcrest.Matchers.notNullValue -import org.junit.Before -import org.junit.Test +import org.hamcrest.MatcherAssert.* +import org.hamcrest.Matchers.* +import org.junit.* /** * Unit test for [KnownSonesPage]. */ -class KnownSonesPageTest: WebPageTest(::KnownSonesPage) { +class KnownSonesPageTest : WebPageTest(::KnownSonesPage) { private val sones = listOf( createSone(1000, 4, 7, 2, "sone2", true, true), @@ -48,11 +38,12 @@ class KnownSonesPageTest: WebPageTest(::KnownSonesPage) { whenever(this.time).thenReturn(time) whenever(this.posts).thenReturn((0..(posts - 1)).map { mock() }) whenever(this.replies).thenReturn((0..(replies - 1)).map { mock() }.toSet()) - val album = mock() - whenever(album.images).thenReturn(((0..(images - 1)).map { mock() })) - val rootAlbum = mock().apply { - whenever(albums).thenReturn(listOf(album)) + val album = AlbumImpl(this) + repeat(images) { + ImageImpl().modify().setSone(this).update() + .also(album::addImage) } + val rootAlbum = AlbumImpl(this).also { it.addAlbum(album) } whenever(this.rootAlbum).thenReturn(rootAlbum) whenever(this.profile).thenReturn(mock()) whenever(id).thenReturn(name.toLowerCase()) @@ -84,7 +75,7 @@ class KnownSonesPageTest: WebPageTest(::KnownSonesPage) { @Test fun `page returns correct title`() { - whenever(l10n.getString("Page.KnownSones.Title")).thenReturn("known sones page title") + addTranslation("Page.KnownSones.Title", "known sones page title") assertThat(page.getPageTitle(soneRequest), equalTo("known sones page title")) } @@ -248,12 +239,17 @@ class KnownSonesPageTest: WebPageTest(::KnownSonesPage) { @Test fun `page can be created by dependency injection`() { - assertThat(baseInjector.getInstance(), notNullValue()) + assertThat(baseInjector.getInstance(), notNullValue()) } @Test fun `page is annotated with the correct menuname`() { - assertThat(page.menuName, equalTo("KnownSones")) + assertThat(page.menuName, equalTo("KnownSones")) + } + + @Test + fun `page is annotated with corrrect template path`() { + assertThat(page.templatePath, equalTo("/templates/knownSones.html")) } }