Move web pages to their own package
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / pages / AboutPageTest.kt
diff --git a/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt
new file mode 100644 (file)
index 0000000..93672a1
--- /dev/null
@@ -0,0 +1,50 @@
+package net.pterodactylus.sone.web.pages
+
+import net.pterodactylus.sone.main.SonePlugin.PluginHomepage
+import net.pterodactylus.sone.main.SonePlugin.PluginVersion
+import net.pterodactylus.sone.main.SonePlugin.PluginYear
+import net.pterodactylus.sone.web.pages.WebPageTest
+import net.pterodactylus.sone.web.pages.AboutPage
+import org.hamcrest.MatcherAssert.assertThat
+import org.hamcrest.Matchers.equalTo
+import org.junit.Test
+
+/**
+ * Unit test for [AboutPage].
+ */
+class AboutPageTest: WebPageTest() {
+
+       private val version = "0.1.2"
+       private val year = 1234
+       private val homepage = "home://page"
+       private val page = AboutPage(template, webInterface, PluginVersion(version), PluginYear(year), PluginHomepage(homepage))
+
+       @Test
+       fun `page returns correct path`() {
+               assertThat(page.path, equalTo("about.html"))
+       }
+
+       @Test
+       fun `page does not require login`() {
+               assertThat(page.requiresLogin(), equalTo(false))
+       }
+
+       @Test
+       fun `page sets correct version in template context`() {
+               page.processTemplate(freenetRequest, templateContext)
+               assertThat(templateContext["version"], equalTo<Any>(version))
+       }
+
+       @Test
+       fun `page sets correct homepage in template context`() {
+               page.processTemplate(freenetRequest, templateContext)
+               assertThat(templateContext["homepage"], equalTo<Any>(homepage))
+       }
+
+       @Test
+       fun `page sets correct year in template context`() {
+               page.processTemplate(freenetRequest, templateContext)
+               assertThat(templateContext["year"], equalTo<Any>(year))
+       }
+
+}