Skip to content

Commit edf613a

Browse files
committed
refactor(room list): get rid of the sliding sync in room-list_service::Room
This was only used to retrieve events cached in the timeline_queue().
1 parent df1968b commit edf613a

File tree

17 files changed

+99
-160
lines changed

17 files changed

+99
-160
lines changed

crates/matrix-sdk-ui/src/room_list_service/filters/all.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,16 @@ pub fn new_filter(filters: Vec<BoxedFilterFn>) -> impl Filter {
2424
mod tests {
2525
use std::ops::Not;
2626

27+
use matrix_sdk::test_utils::logged_in_client_with_server;
2728
use matrix_sdk_test::async_test;
2829
use ruma::room_id;
2930

30-
use super::{
31-
super::{client_and_server_prelude, new_rooms},
32-
*,
33-
};
31+
use super::{super::new_rooms, *};
3432

3533
#[async_test]
3634
async fn test_one_filter() {
37-
let (client, server, sliding_sync) = client_and_server_prelude().await;
38-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
35+
let (client, server) = logged_in_client_with_server().await;
36+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
3937

4038
{
4139
let filter = |_: &_| true;
@@ -54,8 +52,8 @@ mod tests {
5452

5553
#[async_test]
5654
async fn test_two_filters() {
57-
let (client, server, sliding_sync) = client_and_server_prelude().await;
58-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
55+
let (client, server) = logged_in_client_with_server().await;
56+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5957

6058
{
6159
let filter1 = |_: &_| true;

crates/matrix-sdk-ui/src/room_list_service/filters/any.rs

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,16 @@ pub fn new_filter(filters: Vec<BoxedFilterFn>) -> impl Filter {
2424
mod tests {
2525
use std::ops::Not;
2626

27+
use matrix_sdk::test_utils::logged_in_client_with_server;
2728
use matrix_sdk_test::async_test;
2829
use ruma::room_id;
2930

30-
use super::{
31-
super::{client_and_server_prelude, new_rooms},
32-
*,
33-
};
31+
use super::{super::new_rooms, *};
3432

3533
#[async_test]
3634
async fn test_one_filter_is_true() {
37-
let (client, server, sliding_sync) = client_and_server_prelude().await;
38-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
35+
let (client, server) = logged_in_client_with_server().await;
36+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
3937

4038
let filter = |_: &_| true;
4139
let any = new_filter(vec![Box::new(filter)]);
@@ -45,8 +43,8 @@ mod tests {
4543

4644
#[async_test]
4745
async fn test_one_filter_is_false() {
48-
let (client, server, sliding_sync) = client_and_server_prelude().await;
49-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
46+
let (client, server) = logged_in_client_with_server().await;
47+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5048

5149
let filter = |_: &_| false;
5250
let any = new_filter(vec![Box::new(filter)]);
@@ -56,8 +54,8 @@ mod tests {
5654

5755
#[async_test]
5856
async fn test_two_filters_with_true_true() {
59-
let (client, server, sliding_sync) = client_and_server_prelude().await;
60-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
57+
let (client, server) = logged_in_client_with_server().await;
58+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
6159

6260
let filter1 = |_: &_| true;
6361
let filter2 = |_: &_| true;
@@ -68,8 +66,8 @@ mod tests {
6866

6967
#[async_test]
7068
async fn test_two_filters_with_true_false() {
71-
let (client, server, sliding_sync) = client_and_server_prelude().await;
72-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
69+
let (client, server) = logged_in_client_with_server().await;
70+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
7371

7472
let filter1 = |_: &_| true;
7573
let filter2 = |_: &_| false;
@@ -80,8 +78,8 @@ mod tests {
8078

8179
#[async_test]
8280
async fn test_two_filters_with_false_true() {
83-
let (client, server, sliding_sync) = client_and_server_prelude().await;
84-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
81+
let (client, server) = logged_in_client_with_server().await;
82+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
8583

8684
let filter1 = |_: &_| false;
8785
let filter2 = |_: &_| true;
@@ -92,8 +90,8 @@ mod tests {
9290

9391
#[async_test]
9492
async fn test_two_filters_with_false_false() {
95-
let (client, server, sliding_sync) = client_and_server_prelude().await;
96-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
93+
let (client, server) = logged_in_client_with_server().await;
94+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
9795

9896
let filter1 = |_: &_| false;
9997
let filter2 = |_: &_| false;

crates/matrix-sdk-ui/src/room_list_service/filters/category.rs

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -79,18 +79,16 @@ pub fn new_filter(expected_category: RoomCategory) -> impl Filter {
7979
mod tests {
8080
use std::ops::Not;
8181

82+
use matrix_sdk::test_utils::logged_in_client_with_server;
8283
use matrix_sdk_test::async_test;
8384
use ruma::room_id;
8485

85-
use super::{
86-
super::{client_and_server_prelude, new_rooms},
87-
*,
88-
};
86+
use super::{super::new_rooms, *};
8987

9088
#[async_test]
9189
async fn test_kind_is_group() {
92-
let (client, server, sliding_sync) = client_and_server_prelude().await;
93-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
90+
let (client, server) = logged_in_client_with_server().await;
91+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
9492

9593
let matcher = CategoryRoomMatcher { number_of_direct_targets: |_| Some(42) };
9694

@@ -111,8 +109,8 @@ mod tests {
111109

112110
#[async_test]
113111
async fn test_kind_is_people() {
114-
let (client, server, sliding_sync) = client_and_server_prelude().await;
115-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
112+
let (client, server) = logged_in_client_with_server().await;
113+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
116114

117115
let matcher = CategoryRoomMatcher { number_of_direct_targets: |_| Some(1) };
118116

@@ -133,8 +131,8 @@ mod tests {
133131

134132
#[async_test]
135133
async fn test_room_kind_cannot_be_found() {
136-
let (client, server, sliding_sync) = client_and_server_prelude().await;
137-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
134+
let (client, server) = logged_in_client_with_server().await;
135+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
138136

139137
let matcher = CategoryRoomMatcher { number_of_direct_targets: |_| None };
140138

crates/matrix-sdk-ui/src/room_list_service/filters/favourite.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,18 +42,16 @@ pub fn new_filter() -> impl Filter {
4242
mod tests {
4343
use std::ops::Not;
4444

45+
use matrix_sdk::test_utils::logged_in_client_with_server;
4546
use matrix_sdk_test::async_test;
4647
use ruma::room_id;
4748

48-
use super::{
49-
super::{client_and_server_prelude, new_rooms},
50-
*,
51-
};
49+
use super::{super::new_rooms, *};
5250

5351
#[async_test]
5452
async fn test_is_favourite() {
55-
let (client, server, sliding_sync) = client_and_server_prelude().await;
56-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
53+
let (client, server) = logged_in_client_with_server().await;
54+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5755

5856
let matcher = FavouriteRoomMatcher { is_favourite: |_| true };
5957

@@ -62,8 +60,8 @@ mod tests {
6260

6361
#[async_test]
6462
async fn test_is_not_favourite() {
65-
let (client, server, sliding_sync) = client_and_server_prelude().await;
66-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
63+
let (client, server) = logged_in_client_with_server().await;
64+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
6765

6866
let matcher = FavouriteRoomMatcher { is_favourite: |_| false };
6967

crates/matrix-sdk-ui/src/room_list_service/filters/invite.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,19 +42,17 @@ pub fn new_filter() -> impl Filter {
4242

4343
#[cfg(test)]
4444
mod tests {
45+
use matrix_sdk::test_utils::logged_in_client_with_server;
4546
use matrix_sdk_base::RoomState;
4647
use matrix_sdk_test::async_test;
4748
use ruma::room_id;
4849

49-
use super::{
50-
super::{client_and_server_prelude, new_rooms},
51-
*,
52-
};
50+
use super::{super::new_rooms, *};
5351

5452
#[async_test]
5553
async fn test_all_invite_kind() {
56-
let (client, server, sliding_sync) = client_and_server_prelude().await;
57-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
54+
let (client, server) = logged_in_client_with_server().await;
55+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5856

5957
// When a room has been left, it doesn't match.
6058
let matcher = InviteRoomMatcher { state: |_| RoomState::Left };

crates/matrix-sdk-ui/src/room_list_service/filters/joined.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,19 +42,17 @@ pub fn new_filter() -> impl Filter {
4242

4343
#[cfg(test)]
4444
mod tests {
45+
use matrix_sdk::test_utils::logged_in_client_with_server;
4546
use matrix_sdk_base::RoomState;
4647
use matrix_sdk_test::async_test;
4748
use ruma::room_id;
4849

49-
use super::{
50-
super::{client_and_server_prelude, new_rooms},
51-
*,
52-
};
50+
use super::{super::new_rooms, *};
5351

5452
#[async_test]
5553
async fn test_all_joined_kind() {
56-
let (client, server, sliding_sync) = client_and_server_prelude().await;
57-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
54+
let (client, server) = logged_in_client_with_server().await;
55+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5856

5957
// When a room has been left, it doesn't match.
6058
let matcher = JoinedRoomMatcher { state: |_| RoomState::Left };

crates/matrix-sdk-ui/src/room_list_service/filters/mod.rs

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,6 @@ mod normalized_match_room_name;
6464
mod not;
6565
mod unread;
6666

67-
#[cfg(test)]
68-
use std::sync::Arc;
69-
7067
pub use all::new_filter as new_filter_all;
7168
pub use any::new_filter as new_filter_any;
7269
pub use category::{new_filter as new_filter_category, RoomCategory};
@@ -75,7 +72,7 @@ pub use fuzzy_match_room_name::new_filter as new_filter_fuzzy_match_room_name;
7572
pub use invite::new_filter as new_filter_invite;
7673
pub use joined::new_filter as new_filter_joined;
7774
#[cfg(test)]
78-
use matrix_sdk::{test_utils::logged_in_client_with_server, Client, SlidingSync};
75+
use matrix_sdk::Client;
7976
#[cfg(test)]
8077
use matrix_sdk_test::{JoinedRoomBuilder, SyncResponseBuilder};
8178
pub use non_left::new_filter as new_filter_non_left;
@@ -116,7 +113,6 @@ pub(super) async fn new_rooms<const N: usize>(
116113
room_ids: [&RoomId; N],
117114
client: &Client,
118115
server: &MockServer,
119-
sliding_sync: &Arc<SlidingSync>,
120116
) -> [Room; N] {
121117
let mut response_builder = SyncResponseBuilder::default();
122118

@@ -135,15 +131,7 @@ pub(super) async fn new_rooms<const N: usize>(
135131

136132
let _response = client.sync_once(Default::default()).await.unwrap();
137133

138-
room_ids.map(|room_id| Room::new(client.get_room(room_id).unwrap(), sliding_sync))
139-
}
140-
141-
#[cfg(test)]
142-
pub(super) async fn client_and_server_prelude() -> (Client, MockServer, Arc<SlidingSync>) {
143-
let (client, server) = logged_in_client_with_server().await;
144-
let sliding_sync = Arc::new(client.sliding_sync("foo").unwrap().build().await.unwrap());
145-
146-
(client, server, sliding_sync)
134+
room_ids.map(|room_id| Room::new(client.get_room(room_id).unwrap()))
147135
}
148136

149137
#[cfg(test)]

crates/matrix-sdk-ui/src/room_list_service/filters/non_left.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,17 @@ pub fn new_filter() -> impl Filter {
4444

4545
#[cfg(test)]
4646
mod tests {
47+
use matrix_sdk::test_utils::logged_in_client_with_server;
4748
use matrix_sdk_base::RoomState;
4849
use matrix_sdk_test::async_test;
4950
use ruma::room_id;
5051

51-
use super::{
52-
super::{client_and_server_prelude, new_rooms},
53-
*,
54-
};
52+
use super::{super::new_rooms, *};
5553

5654
#[async_test]
5755
async fn test_all_non_left_kind_of_room_list_entry() {
58-
let (client, server, sliding_sync) = client_and_server_prelude().await;
59-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
56+
let (client, server) = logged_in_client_with_server().await;
57+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
6058

6159
// When a room has been left, it doesn't match.
6260
let matcher = NonLeftRoomMatcher { state: |_| RoomState::Left };

crates/matrix-sdk-ui/src/room_list_service/filters/none.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,16 @@ pub fn new_filter() -> impl Filter {
2323
mod tests {
2424
use std::ops::Not;
2525

26+
use matrix_sdk::test_utils::logged_in_client_with_server;
2627
use matrix_sdk_test::async_test;
2728
use ruma::room_id;
2829

29-
use super::{
30-
super::{client_and_server_prelude, new_rooms},
31-
*,
32-
};
30+
use super::{super::new_rooms, *};
3331

3432
#[async_test]
3533
async fn test_all_kind_of_room_list_entry() {
36-
let (client, server, sliding_sync) = client_and_server_prelude().await;
37-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
34+
let (client, server) = logged_in_client_with_server().await;
35+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
3836

3937
let none = new_filter();
4038

crates/matrix-sdk-ui/src/room_list_service/filters/not.rs

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,16 @@ pub fn new_filter(filter: BoxedFilterFn) -> impl Filter {
2626
mod tests {
2727
use std::ops::Not;
2828

29+
use matrix_sdk::test_utils::logged_in_client_with_server;
2930
use matrix_sdk_test::async_test;
3031
use ruma::room_id;
3132

32-
use super::{
33-
super::{client_and_server_prelude, new_rooms},
34-
*,
35-
};
33+
use super::{super::new_rooms, *};
3634

3735
#[async_test]
3836
async fn test_true() {
39-
let (client, server, sliding_sync) = client_and_server_prelude().await;
40-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
37+
let (client, server) = logged_in_client_with_server().await;
38+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
4139

4240
let filter = Box::new(|_: &_| true);
4341
let not = new_filter(filter);
@@ -47,8 +45,8 @@ mod tests {
4745

4846
#[async_test]
4947
async fn test_false() {
50-
let (client, server, sliding_sync) = client_and_server_prelude().await;
51-
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server, &sliding_sync).await;
48+
let (client, server) = logged_in_client_with_server().await;
49+
let [room] = new_rooms([room_id!("!a:b.c")], &client, &server).await;
5250

5351
let filter = Box::new(|_: &_| false);
5452
let not = new_filter(filter);

0 commit comments

Comments
 (0)