import net.pterodactylus.sone.data.Profile
import net.pterodactylus.sone.test.mock
import net.pterodactylus.sone.test.whenever
-import net.pterodactylus.sone.web.pages.EditProfilePage
-import net.pterodactylus.sone.web.pages.WebPageTest
import net.pterodactylus.util.web.Method.POST
import org.hamcrest.MatcherAssert.assertThat
import org.hamcrest.Matchers.contains
/**
* Unit test for [EditProfilePage].
*/
-class EditProfilePageTest : WebPageTest() {
-
- private val page = EditProfilePage(template, webInterface)
+class EditProfilePageTest: WebPageTest(::EditProfilePage) {
private val profile = Profile(currentSone)
private val firstField = profile.addField("First Field")
private val secondField = profile.addField("Second Field")
- override fun getPage() = page
-
@Before
fun setupProfile() {
val avatar = mock<Image>()
addHttpRequestPart("save-profile", "true")
addHttpRequestPart(fieldName, newValue.toString())
verifyRedirect("editProfile.html") {
+ verify(currentSone).profile = profile
verify(core).touchConfiguration()
assertThat(fieldAccessor(), equalTo(expectedValue))
}