import net.pterodactylus.sone.web.page.FreenetRequest
import net.pterodactylus.util.template.Template
import net.pterodactylus.util.template.TemplateContext
+import javax.inject.Inject
/**
* Page that displays all new posts and replies. The posts are filtered using
* [PostVisibilityFilter.isPostVisible(Sone, Post)] and sorted by time.
*/
-class NewPage(template: Template, webInterface: WebInterface):
+class NewPage @Inject constructor( template: Template, webInterface: WebInterface):
SoneTemplatePage("new.html", webInterface, template, "Page.New.Title") {
override fun handleRequest(freenetRequest: FreenetRequest, templateContext: TemplateContext) =
import net.pterodactylus.sone.data.Post
import net.pterodactylus.sone.data.PostReply
+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.utils.asOptional
+import net.pterodactylus.sone.web.baseInjector
import org.hamcrest.MatcherAssert.assertThat
import org.hamcrest.Matchers.contains
import org.hamcrest.Matchers.containsInAnyOrder
import org.hamcrest.Matchers.equalTo
+import org.hamcrest.Matchers.notNullValue
import org.junit.Before
import org.junit.Test
import java.util.Arrays.asList
}
}
+ @Test
+ fun `page can be created by dependency injection`() {
+ assertThat(baseInjector.getInstance<NewPage>(), notNullValue())
+ }
+
}