Ensure that we can "not filter" the rooms.

This commit is contained in:
Benoit Marty 2024-05-30 15:12:27 +02:00 committed by Benoit Marty
parent da500fdcb2
commit ff697f68fc
2 changed files with 8 additions and 0 deletions

View file

@ -20,6 +20,7 @@ sealed interface RoomListFilter {
companion object { companion object {
/** /**
* Create a filter that matches all the given filters. * Create a filter that matches all the given filters.
* If not filters are provided, all the room will match.
*/ */
fun all(vararg filters: RoomListFilter): RoomListFilter { fun all(vararg filters: RoomListFilter): RoomListFilter {
return All(filters.toList()) return All(filters.toList())
@ -35,6 +36,7 @@ sealed interface RoomListFilter {
/** /**
* A filter that matches all the given filters. * A filter that matches all the given filters.
* If [filters] is empty, all the room will match.
*/ */
data class All( data class All(
val filters: List<RoomListFilter> val filters: List<RoomListFilter>

View file

@ -136,4 +136,10 @@ class RoomListFilterTest {
) )
assertThat(roomSummaries.filter(filter)).isEmpty() assertThat(roomSummaries.filter(filter)).isEmpty()
} }
@Test
fun `Room list filter all with empty list`() = runTest {
val filter = RoomListFilter.all()
assertThat(roomSummaries.filter(filter)).isEqualTo(roomSummaries)
}
} }