Ensure the preview match the behavior (and improve code coverage)
This commit is contained in:
parent
e47e9b12b0
commit
b2b5a76caa
2 changed files with 23 additions and 15 deletions
|
|
@ -20,8 +20,8 @@ import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||||
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
import io.element.android.libraries.designsystem.theme.components.SearchBarResultState
|
||||||
import io.element.android.libraries.matrix.api.core.RoomId
|
import io.element.android.libraries.matrix.api.core.RoomId
|
||||||
import io.element.android.libraries.matrix.api.room.RoomMember
|
import io.element.android.libraries.matrix.api.room.RoomMember
|
||||||
import io.element.android.libraries.matrix.api.roomlist.RoomSummaryDetails
|
|
||||||
import io.element.android.libraries.matrix.api.room.message.RoomMessage
|
import io.element.android.libraries.matrix.api.room.message.RoomMessage
|
||||||
|
import io.element.android.libraries.matrix.api.roomlist.RoomSummaryDetails
|
||||||
import kotlinx.collections.immutable.ImmutableList
|
import kotlinx.collections.immutable.ImmutableList
|
||||||
import kotlinx.collections.immutable.persistentListOf
|
import kotlinx.collections.immutable.persistentListOf
|
||||||
|
|
||||||
|
|
@ -29,29 +29,37 @@ open class ForwardMessagesStateProvider : PreviewParameterProvider<ForwardMessag
|
||||||
override val values: Sequence<ForwardMessagesState>
|
override val values: Sequence<ForwardMessagesState>
|
||||||
get() = sequenceOf(
|
get() = sequenceOf(
|
||||||
aForwardMessagesState(),
|
aForwardMessagesState(),
|
||||||
aForwardMessagesState(query = "Test"),
|
aForwardMessagesState(query = "Test", isSearchActive = true),
|
||||||
aForwardMessagesState(resultState = SearchBarResultState.Results(aForwardMessagesRoomList())),
|
aForwardMessagesState(resultState = SearchBarResultState.Results(aForwardMessagesRoomList())),
|
||||||
aForwardMessagesState(resultState = SearchBarResultState.Results(aForwardMessagesRoomList()), query = "Test"),
|
|
||||||
aForwardMessagesState(
|
aForwardMessagesState(
|
||||||
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
||||||
query = "Test",
|
query = "Test",
|
||||||
|
isSearchActive = true,
|
||||||
|
),
|
||||||
|
aForwardMessagesState(
|
||||||
|
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
||||||
|
query = "Test",
|
||||||
|
isSearchActive = true,
|
||||||
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain")))
|
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain")))
|
||||||
),
|
),
|
||||||
aForwardMessagesState(
|
aForwardMessagesState(
|
||||||
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
||||||
query = "Test",
|
query = "Test",
|
||||||
|
isSearchActive = true,
|
||||||
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
||||||
isForwarding = true,
|
isForwarding = true,
|
||||||
),
|
),
|
||||||
aForwardMessagesState(
|
aForwardMessagesState(
|
||||||
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
||||||
query = "Test",
|
query = "Test",
|
||||||
|
isSearchActive = true,
|
||||||
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
||||||
forwardingSucceeded = persistentListOf(RoomId("!room2:domain")),
|
forwardingSucceeded = persistentListOf(RoomId("!room2:domain")),
|
||||||
),
|
),
|
||||||
aForwardMessagesState(
|
aForwardMessagesState(
|
||||||
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
resultState = SearchBarResultState.Results(aForwardMessagesRoomList()),
|
||||||
query = "Test",
|
query = "Test",
|
||||||
|
isSearchActive = true,
|
||||||
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
selectedRooms = persistentListOf(aRoomDetailsState(roomId = RoomId("!room2:domain"))),
|
||||||
error = Throwable("error"),
|
error = Throwable("error"),
|
||||||
),
|
),
|
||||||
|
|
@ -78,7 +86,7 @@ fun aForwardMessagesState(
|
||||||
eventSink = {}
|
eventSink = {}
|
||||||
)
|
)
|
||||||
|
|
||||||
internal fun aForwardMessagesRoomList() = listOf(
|
internal fun aForwardMessagesRoomList() = persistentListOf(
|
||||||
aRoomDetailsState(),
|
aRoomDetailsState(),
|
||||||
aRoomDetailsState(roomId = RoomId("!room2:domain"), canonicalAlias = "#element-x-room:matrix.org"),
|
aRoomDetailsState(roomId = RoomId("!room2:domain"), canonicalAlias = "#element-x-room:matrix.org"),
|
||||||
)
|
)
|
||||||
|
|
@ -94,13 +102,13 @@ fun aRoomDetailsState(
|
||||||
unreadNotificationCount: Int = 0,
|
unreadNotificationCount: Int = 0,
|
||||||
inviter: RoomMember? = null,
|
inviter: RoomMember? = null,
|
||||||
) = RoomSummaryDetails(
|
) = RoomSummaryDetails(
|
||||||
roomId = roomId,
|
roomId = roomId,
|
||||||
name = name,
|
name = name,
|
||||||
canonicalAlias = canonicalAlias,
|
canonicalAlias = canonicalAlias,
|
||||||
isDirect = isDirect,
|
isDirect = isDirect,
|
||||||
avatarURLString = avatarURLString,
|
avatarURLString = avatarURLString,
|
||||||
lastMessage = lastMessage,
|
lastMessage = lastMessage,
|
||||||
lastMessageTimestamp = lastMessageTimestamp,
|
lastMessageTimestamp = lastMessageTimestamp,
|
||||||
unreadNotificationCount = unreadNotificationCount,
|
unreadNotificationCount = unreadNotificationCount,
|
||||||
inviter = inviter,
|
inviter = inviter,
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,7 @@ fun ForwardMessagesView(
|
||||||
.padding(paddingValues)
|
.padding(paddingValues)
|
||||||
.consumeWindowInsets(paddingValues)
|
.consumeWindowInsets(paddingValues)
|
||||||
) {
|
) {
|
||||||
SearchBar<ImmutableList<RoomSummaryDetails>>(
|
SearchBar(
|
||||||
placeHolderTitle = stringResource(CommonStrings.action_search),
|
placeHolderTitle = stringResource(CommonStrings.action_search),
|
||||||
query = state.query,
|
query = state.query,
|
||||||
onQueryChange = { state.eventSink(ForwardMessagesEvents.UpdateQuery(it)) },
|
onQueryChange = { state.eventSink(ForwardMessagesEvents.UpdateQuery(it)) },
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue