import net.pterodactylus.sone.data.Profile
import net.pterodactylus.sone.data.Sone
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.web.baseInjector
import net.pterodactylus.util.web.Method.POST
import org.hamcrest.MatcherAssert.assertThat
import org.hamcrest.Matchers.contains
import org.hamcrest.Matchers.equalTo
+import org.hamcrest.Matchers.notNullValue
import org.junit.Test
import org.mockito.ArgumentMatchers.anyString
import org.mockito.Mockito.verify
/**
* Unit test for [CreateSonePage].
*/
-class CreateSonePageTest: WebPageTest() {
-
- private val page = CreateSonePage(template, webInterface)
- override fun getPage() = page
+class CreateSonePageTest : WebPageTest(::CreateSonePage) {
private val localSones_ = listOf(
createSone("local-sone1"),
@Test
fun `create sone is not shown in menu if full access is required but client doesn’t have full access`() {
- core.preferences.isRequireFullAccess = true
+ core.preferences.newRequireFullAccess = true
assertThat(page.isEnabled(toadletContext), equalTo(false))
}
@Test
fun `create sone is shown in menu if no sone is logged in and client has full access`() {
- core.preferences.isRequireFullAccess = true
+ core.preferences.newRequireFullAccess = true
whenever(toadletContext.isAllowedFullAccess).thenReturn(true)
unsetCurrentSone()
assertThat(page.isEnabled(toadletContext), equalTo(true))
}
+ @Test
+ fun `page can be created by dependency injection`() {
+ assertThat(baseInjector.getInstance<CreateSonePage>(), notNullValue())
+ }
+
}