Mode test for ChangeServerView
This commit is contained in:
parent
aecc294df9
commit
e4bbfc1470
2 changed files with 19 additions and 6 deletions
|
|
@ -16,8 +16,20 @@
|
||||||
|
|
||||||
package io.element.android.features.login.changeserver
|
package io.element.android.features.login.changeserver
|
||||||
|
|
||||||
|
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||||
import io.element.android.libraries.architecture.Async
|
import io.element.android.libraries.architecture.Async
|
||||||
|
|
||||||
|
open class ChangeServerStateProvider : PreviewParameterProvider<ChangeServerState> {
|
||||||
|
override val values: Sequence<ChangeServerState>
|
||||||
|
get() = sequenceOf(
|
||||||
|
aChangeServerState(),
|
||||||
|
aChangeServerState().copy(homeserver = "matrix.org"),
|
||||||
|
aChangeServerState().copy(homeserver = "matrix.org", changeServerAction = Async.Loading()),
|
||||||
|
aChangeServerState().copy(homeserver = "invalid.org", changeServerAction = Async.Failure(Throwable("An error"))),
|
||||||
|
aChangeServerState().copy(homeserver = "matrix.org", changeServerAction = Async.Success(Unit)),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
fun aChangeServerState() = ChangeServerState(
|
fun aChangeServerState() = ChangeServerState(
|
||||||
homeserver = "",
|
homeserver = "",
|
||||||
changeServerAction = Async.Uninitialized,
|
changeServerAction = Async.Uninitialized,
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,7 @@ import androidx.compose.ui.text.input.ImeAction
|
||||||
import androidx.compose.ui.text.input.KeyboardType
|
import androidx.compose.ui.text.input.KeyboardType
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
|
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import androidx.compose.ui.unit.sp
|
import androidx.compose.ui.unit.sp
|
||||||
import io.element.android.features.login.R
|
import io.element.android.features.login.R
|
||||||
|
|
@ -179,15 +180,15 @@ fun ChangeServerView(
|
||||||
|
|
||||||
@Preview
|
@Preview
|
||||||
@Composable
|
@Composable
|
||||||
fun ChangeServerViewLightPreview() = ElementPreviewLight { ContentToPreview() }
|
fun ChangeServerViewLightPreview(@PreviewParameter(ChangeServerStateProvider::class) state: ChangeServerState) =
|
||||||
|
ElementPreviewLight { ContentToPreview(state) }
|
||||||
|
|
||||||
@Preview
|
@Preview
|
||||||
@Composable
|
@Composable
|
||||||
fun ChangeServerViewDarkPreview() = ElementPreviewDark { ContentToPreview() }
|
fun ChangeServerViewDarkPreview(@PreviewParameter(ChangeServerStateProvider::class) state: ChangeServerState) =
|
||||||
|
ElementPreviewDark { ContentToPreview(state) }
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
private fun ContentToPreview() {
|
private fun ContentToPreview(state: ChangeServerState) {
|
||||||
ChangeServerView(
|
ChangeServerView(state = state)
|
||||||
state = aChangeServerState().copy(homeserver = "matrix.org"),
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue