import net.pterodactylus.sone.utils.parameters
import net.pterodactylus.sone.web.WebInterface
import net.pterodactylus.sone.web.page.FreenetRequest
+import javax.inject.Inject
/**
* AJAX page that lets a Sone follow another Sone.
*/
-class FollowSoneAjaxPage(webInterface: WebInterface) : LoggedInJsonPage("followSone.ajax", webInterface) {
+class FollowSoneAjaxPage @Inject constructor(webInterface: WebInterface) :
+ LoggedInJsonPage("followSone.ajax", webInterface) {
override fun createJsonObject(currentSone: Sone, request: FreenetRequest) =
request.parameters["sone"]
package net.pterodactylus.sone.web.ajax
import net.pterodactylus.sone.data.Sone
+import net.pterodactylus.sone.test.getInstance
import net.pterodactylus.sone.test.mock
import net.pterodactylus.sone.test.whenever
+import net.pterodactylus.sone.web.baseInjector
import org.hamcrest.MatcherAssert.assertThat
import org.hamcrest.Matchers.equalTo
+import org.hamcrest.Matchers.notNullValue
import org.junit.Test
import org.mockito.Mockito.verify
verify(core).markSoneKnown(sone)
}
+ @Test
+ fun `page can be created by dependency injection`() {
+ assertThat(baseInjector.getInstance<FollowSoneAjaxPage>(), notNullValue())
+ }
+
}