Skip to content

Commit c2976e6

Browse files
committed
chore(spaces): move space specific test fixtures from test_event and sync_events to the EventFactory
1 parent b7895ec commit c2976e6

File tree

10 files changed

+114
-134
lines changed

10 files changed

+114
-134
lines changed

crates/matrix-sdk-base/src/response_processors/state_events.rs

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -456,15 +456,19 @@ mod tests {
456456
let response = response_builder
457457
.add_joined_room(
458458
JoinedRoomBuilder::new(room_id_0)
459-
.add_timeline_event(
460-
event_factory.create(sender, RoomVersionId::try_from("42")?),
461-
)
462-
.add_timeline_event(
463-
event_factory.create(sender, RoomVersionId::try_from("43")?),
464-
),
459+
.add_timeline_event(event_factory.create(
460+
sender,
461+
RoomVersionId::try_from("42")?,
462+
None,
463+
))
464+
.add_timeline_event(event_factory.create(
465+
sender,
466+
RoomVersionId::try_from("43")?,
467+
None,
468+
)),
465469
)
466470
.add_joined_room(JoinedRoomBuilder::new(room_id_1).add_timeline_event(
467-
event_factory.create(sender, RoomVersionId::try_from("44")?),
471+
event_factory.create(sender, RoomVersionId::try_from("44")?, None),
468472
))
469473
.add_joined_room(JoinedRoomBuilder::new(room_id_2))
470474
.build_sync_response();
@@ -492,13 +496,13 @@ mod tests {
492496
{
493497
let response = response_builder
494498
.add_joined_room(JoinedRoomBuilder::new(room_id_0).add_timeline_event(
495-
event_factory.create(sender, RoomVersionId::try_from("45")?),
499+
event_factory.create(sender, RoomVersionId::try_from("45")?, None),
496500
))
497501
.add_joined_room(JoinedRoomBuilder::new(room_id_1).add_timeline_event(
498-
event_factory.create(sender, RoomVersionId::try_from("46")?),
502+
event_factory.create(sender, RoomVersionId::try_from("46")?, None),
499503
))
500504
.add_joined_room(JoinedRoomBuilder::new(room_id_2).add_timeline_event(
501-
event_factory.create(sender, RoomVersionId::try_from("47")?),
505+
event_factory.create(sender, RoomVersionId::try_from("47")?, None),
502506
))
503507
.build_sync_response();
504508

@@ -556,7 +560,7 @@ mod tests {
556560
let response = response_builder
557561
.add_joined_room(JoinedRoomBuilder::new(room_id_0).add_timeline_event(
558562
// Room 0 has no predecessor.
559-
event_factory.create(sender, RoomVersionId::try_from("41")?),
563+
event_factory.create(sender, RoomVersionId::try_from("41")?, None),
560564
))
561565
.build_sync_response();
562566

@@ -580,7 +584,7 @@ mod tests {
580584
JoinedRoomBuilder::new(room_id_1).add_timeline_event(
581585
// Predecessor of room 1 is room 0.
582586
event_factory
583-
.create(sender, RoomVersionId::try_from("42")?)
587+
.create(sender, RoomVersionId::try_from("42")?, None)
584588
.predecessor(room_id_0),
585589
),
586590
)
@@ -619,7 +623,7 @@ mod tests {
619623
JoinedRoomBuilder::new(room_id_2).add_timeline_event(
620624
// Predecessor of room 2 is room 1.
621625
event_factory
622-
.create(sender, RoomVersionId::try_from("43")?)
626+
.create(sender, RoomVersionId::try_from("43")?, None)
623627
.predecessor(room_id_1),
624628
),
625629
)
@@ -675,7 +679,7 @@ mod tests {
675679
JoinedRoomBuilder::new(room_id_0)
676680
.add_timeline_event(
677681
// No predecessor for room 0.
678-
event_factory.create(sender, RoomVersionId::try_from("41")?),
682+
event_factory.create(sender, RoomVersionId::try_from("41")?, None),
679683
)
680684
.add_timeline_event(
681685
// Successor of room 0 is room 1.
@@ -690,7 +694,7 @@ mod tests {
690694
.add_timeline_event(
691695
// Predecessor of room 1 is room 0.
692696
event_factory
693-
.create(sender, RoomVersionId::try_from("42")?)
697+
.create(sender, RoomVersionId::try_from("42")?, None)
694698
.predecessor(room_id_0),
695699
)
696700
.add_timeline_event(
@@ -705,7 +709,7 @@ mod tests {
705709
JoinedRoomBuilder::new(room_id_2).add_timeline_event(
706710
// Predecessor of room 2 is room 1.
707711
event_factory
708-
.create(sender, RoomVersionId::try_from("43")?)
712+
.create(sender, RoomVersionId::try_from("43")?, None)
709713
.predecessor(room_id_1),
710714
),
711715
)
@@ -820,7 +824,7 @@ mod tests {
820824
JoinedRoomBuilder::new(room_id_1).add_timeline_event(
821825
// Predecessor of room 1 is room 0.
822826
event_factory
823-
.create(sender, RoomVersionId::try_from("42")?)
827+
.create(sender, RoomVersionId::try_from("42")?, None)
824828
.predecessor(room_id_0),
825829
),
826830
)
@@ -860,7 +864,7 @@ mod tests {
860864
.add_timeline_event(
861865
// Predecessor of room 2 is room 1.
862866
event_factory
863-
.create(sender, RoomVersionId::try_from("43")?)
867+
.create(sender, RoomVersionId::try_from("43")?, None)
864868
.predecessor(room_id_1),
865869
)
866870
.add_timeline_event(
@@ -930,7 +934,7 @@ mod tests {
930934
// No successor.
931935
JoinedRoomBuilder::new(room_id_0).add_timeline_event(
932936
event_factory
933-
.create(sender, RoomVersionId::try_from("42")?)
937+
.create(sender, RoomVersionId::try_from("42")?, None)
934938
.predecessor(room_id_0)
935939
.event_id(tombstone_event_id),
936940
),
@@ -975,7 +979,7 @@ mod tests {
975979
.add_timeline_event(
976980
// Predecessor of room 0 is room 0
977981
event_factory
978-
.create(sender, RoomVersionId::try_from("42")?)
982+
.create(sender, RoomVersionId::try_from("42")?, None)
979983
.predecessor(room_id_0),
980984
),
981985
)
@@ -1018,7 +1022,7 @@ mod tests {
10181022
.add_timeline_event(
10191023
// Predecessor of room 0 is room 2
10201024
event_factory
1021-
.create(sender, RoomVersionId::try_from("42")?)
1025+
.create(sender, RoomVersionId::try_from("42")?, None)
10221026
.predecessor(room_id_2),
10231027
)
10241028
.add_timeline_event(
@@ -1033,7 +1037,7 @@ mod tests {
10331037
.add_timeline_event(
10341038
// Predecessor of room 1 is room 0
10351039
event_factory
1036-
.create(sender, RoomVersionId::try_from("43")?)
1040+
.create(sender, RoomVersionId::try_from("43")?, None)
10371041
.predecessor(room_id_0),
10381042
)
10391043
.add_timeline_event(
@@ -1048,7 +1052,7 @@ mod tests {
10481052
.add_timeline_event(
10491053
// Predecessor of room 2 is room 1
10501054
event_factory
1051-
.create(sender, RoomVersionId::try_from("44")?)
1055+
.create(sender, RoomVersionId::try_from("44")?, None)
10521056
.predecessor(room_id_1),
10531057
)
10541058
.add_timeline_event(

crates/matrix-sdk-base/src/room/tombstone.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ mod tests {
206206
.add_joined_room(
207207
JoinedRoomBuilder::new(room_id).add_timeline_event(
208208
EventFactory::new()
209-
.create(sender, RoomVersionId::V11)
209+
.create(sender, RoomVersionId::V11, None)
210210
// No `predecessor` field!
211211
.no_predecessor()
212212
.into_raw_sync(),
@@ -233,7 +233,7 @@ mod tests {
233233
.add_joined_room(
234234
JoinedRoomBuilder::new(room_id).add_timeline_event(
235235
EventFactory::new()
236-
.create(sender, RoomVersionId::V11)
236+
.create(sender, RoomVersionId::V11, None)
237237
.predecessor(predecessor_room_id)
238238
.into_raw_sync(),
239239
),

crates/matrix-sdk-ui/src/spaces/mod.rs

Lines changed: 47 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -56,18 +56,22 @@ mod tests {
5656
use super::*;
5757
use assert_matches2::assert_let;
5858
use matrix_sdk::{room::ParentSpace, test_utils::mocks::MatrixMockServer};
59-
use matrix_sdk_test::{JoinedRoomBuilder, StateTestEvent, async_test};
60-
use ruma::room_id;
59+
use matrix_sdk_test::{JoinedRoomBuilder, async_test, event_factory::EventFactory};
60+
use ruma::{RoomVersionId, room::RoomType, room_id};
6161
use tokio_stream::StreamExt;
6262

6363
#[async_test]
64-
async fn test_joined_spaces() {
64+
async fn test_spaces_hierarchy() {
6565
let server = MatrixMockServer::new().await;
6666
let client = server.client_builder().build().await;
67-
let space_discovery_service = SpaceService::new(client.clone());
67+
let user_id = client.user_id().unwrap();
68+
let space_service = SpaceService::new(client.clone());
69+
let factory = EventFactory::new();
6870

6971
server.mock_room_state_encryption().plain().mount().await;
7072

73+
// Given one parent space with 2 children spaces
74+
7175
let parent_space_id = room_id!("!3:example.org");
7276
let child_space_id_1 = room_id!("!1:example.org");
7377
let child_space_id_2 = room_id!("!2:example.org");
@@ -76,49 +80,68 @@ mod tests {
7680
.sync_room(
7781
&client,
7882
JoinedRoomBuilder::new(child_space_id_1)
79-
.add_state_event(StateTestEvent::CreateSpace)
80-
.add_state_event(StateTestEvent::SpaceParent {
81-
parent: parent_space_id.to_owned(),
82-
child: child_space_id_1.to_owned(),
83-
}),
83+
.add_state_event(factory.create(
84+
user_id,
85+
RoomVersionId::V1,
86+
Some(RoomType::Space),
87+
))
88+
.add_state_event(
89+
factory
90+
.space_parent(parent_space_id.to_owned(), child_space_id_1.to_owned())
91+
.sender(user_id),
92+
),
8493
)
8594
.await;
8695

8796
server
8897
.sync_room(
8998
&client,
9099
JoinedRoomBuilder::new(child_space_id_2)
91-
.add_state_event(StateTestEvent::CreateSpace)
92-
.add_state_event(StateTestEvent::SpaceParent {
93-
parent: parent_space_id.to_owned(),
94-
child: child_space_id_2.to_owned(),
95-
}),
100+
.add_state_event(factory.create(
101+
user_id,
102+
RoomVersionId::V1,
103+
Some(RoomType::Space),
104+
))
105+
.add_state_event(
106+
factory
107+
.space_parent(parent_space_id.to_owned(), child_space_id_2.to_owned())
108+
.sender(user_id),
109+
),
96110
)
97111
.await;
98112
server
99113
.sync_room(
100114
&client,
101115
JoinedRoomBuilder::new(parent_space_id)
102-
.add_state_event(StateTestEvent::CreateSpace)
103-
.add_state_event(StateTestEvent::SpaceChild {
104-
parent: parent_space_id.to_owned(),
105-
child: child_space_id_1.to_owned(),
106-
})
107-
.add_state_event(StateTestEvent::SpaceChild {
108-
parent: parent_space_id.to_owned(),
109-
child: child_space_id_2.to_owned(),
110-
}),
116+
.add_state_event(factory.create(
117+
user_id,
118+
RoomVersionId::V1,
119+
Some(RoomType::Space),
120+
))
121+
.add_state_event(
122+
factory
123+
.space_child(parent_space_id.to_owned(), child_space_id_1.to_owned())
124+
.sender(user_id),
125+
)
126+
.add_state_event(
127+
factory
128+
.space_child(parent_space_id.to_owned(), child_space_id_2.to_owned())
129+
.sender(user_id),
130+
),
111131
)
112132
.await;
113133

134+
// All joined
114135
assert_eq!(
115-
space_discovery_service.joined_spaces(),
136+
space_service.joined_spaces(),
116137
vec![child_space_id_1, child_space_id_2, parent_space_id]
117138
);
118139

119140
let parent_space = client.get_room(parent_space_id).unwrap();
120141
assert!(parent_space.is_space());
121142

143+
// Then the parent space and the two child spaces are linked
144+
122145
let spaces: Vec<ParentSpace> = client
123146
.get_room(child_space_id_1)
124147
.unwrap()

crates/matrix-sdk-ui/tests/integration/notification_client.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,7 @@ async fn test_notification_client_sliding_sync() {
335335

336336
let event_factory = EventFactory::new().room(room_id);
337337

338-
let room_create_event = event_factory.create(sender, RoomVersionId::V1).into_raw_sync();
338+
let room_create_event = event_factory.create(sender, RoomVersionId::V1, None).into_raw_sync();
339339

340340
let sender_member_event = event_factory
341341
.member(sender)

crates/matrix-sdk/src/room/mod.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4710,7 +4710,8 @@ mod tests {
47104710
let mut user_map = BTreeMap::from([(sender_id.into(), 50.into())]);
47114711

47124712
// Computing the power levels will need these 3 state events:
4713-
let room_create_event = f.create(sender_id, RoomVersionId::V1).state_key("").into_raw();
4713+
let room_create_event =
4714+
f.create(sender_id, RoomVersionId::V1, None).state_key("").into_raw();
47144715
let power_levels_event = f.power_levels(&mut user_map).state_key("").into_raw();
47154716
let room_member_event = f.member(sender_id).into_raw();
47164717

crates/matrix-sdk/tests/integration/room/common.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ async fn test_room_route() {
303303
// Without eligible server
304304
sync_builder.add_joined_room(
305305
JoinedRoomBuilder::new(room_id).add_timeline_bulk([
306-
f.create(user_id!("@creator:127.0.0.1"), room_version_id!("6"))
306+
f.create(user_id!("@creator:127.0.0.1"), room_version_id!("6"), None)
307307
.event_id(event_id!("$151957878228ekrDs"))
308308
.server_ts(15195787)
309309
.sender(user_id!("@creator:127.0.0.1"))

crates/matrix-sdk/tests/integration/room/joined.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ async fn test_leave_room_also_leaves_predecessor() -> Result<(), anyhow::Error>
195195
builder.add_joined_room(
196196
JoinedRoomBuilder::new(room_a_id).add_state_event(
197197
EventFactory::new()
198-
.create(user, RoomVersionId::V1)
198+
.create(user, RoomVersionId::V1, None)
199199
.room(room_a_id)
200200
.sender(user)
201201
.event_id(create_room_a_event_id),
@@ -223,7 +223,7 @@ async fn test_leave_room_also_leaves_predecessor() -> Result<(), anyhow::Error>
223223
.add_joined_room(
224224
JoinedRoomBuilder::new(room_b_id).add_state_event(
225225
EventFactory::new()
226-
.create(user, RoomVersionId::V2)
226+
.create(user, RoomVersionId::V2, None)
227227
.predecessor(room_a_id)
228228
.room(room_b_id)
229229
.sender(user)
@@ -271,7 +271,7 @@ async fn test_leave_predecessor_before_successor_no_error() -> Result<(), anyhow
271271
builder.add_joined_room(
272272
JoinedRoomBuilder::new(room_a_id).add_state_event(
273273
EventFactory::new()
274-
.create(user, RoomVersionId::V1)
274+
.create(user, RoomVersionId::V1, None)
275275
.room(room_a_id)
276276
.sender(user)
277277
.event_id(create_room_a_event_id),
@@ -299,7 +299,7 @@ async fn test_leave_predecessor_before_successor_no_error() -> Result<(), anyhow
299299
.add_joined_room(
300300
JoinedRoomBuilder::new(room_b_id).add_state_event(
301301
EventFactory::new()
302-
.create(user, RoomVersionId::V2)
302+
.create(user, RoomVersionId::V2, None)
303303
.predecessor(room_a_id)
304304
.room(room_b_id)
305305
.sender(user)
@@ -352,7 +352,7 @@ async fn test_leave_room_with_fake_predecessor_no_error() -> Result<(), anyhow::
352352
builder.add_joined_room(
353353
JoinedRoomBuilder::new(room_id).add_state_event(
354354
EventFactory::new()
355-
.create(user, RoomVersionId::V2)
355+
.create(user, RoomVersionId::V2, None)
356356
.predecessor(fake_room_id)
357357
.room(room_id)
358358
.sender(user)
@@ -391,7 +391,7 @@ async fn test_leave_room_fails_with_error() -> Result<(), anyhow::Error> {
391391
builder.add_joined_room(
392392
JoinedRoomBuilder::new(room_id).add_state_event(
393393
EventFactory::new()
394-
.create(user, RoomVersionId::V2)
394+
.create(user, RoomVersionId::V2, None)
395395
.room(room_id)
396396
.sender(user)
397397
.event_id(create_room_event_id),

0 commit comments

Comments
 (0)