Skip to content

Commit b00f58a

Browse files
committed
test: get rid of TestTimeline::handle_live_message_event in favor of TestTimeline::handle_live_event
By using the `EventFactory` a bit more. Part of #3716.
1 parent 3b34746 commit b00f58a

File tree

14 files changed

+205
-249
lines changed

14 files changed

+205
-249
lines changed

crates/matrix-sdk-ui/src/timeline/tests/basic.rs

Lines changed: 25 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,13 @@ use assert_matches::assert_matches;
1616
use assert_matches2::assert_let;
1717
use eyeball_im::VectorDiff;
1818
use matrix_sdk::test_utils::events::EventFactory;
19-
use matrix_sdk_base::deserialized_responses::SyncTimelineEvent;
2019
use matrix_sdk_test::{async_test, sync_timeline_event, ALICE, BOB, CAROL};
2120
use ruma::{
22-
assign,
2321
events::{
2422
receipt::{Receipt, ReceiptThread, ReceiptType},
25-
relation::{InReplyTo, Thread},
2623
room::{
2724
member::{MembershipState, RedactedRoomMemberEventContent, RoomMemberEventContent},
28-
message::{MessageType, Relation, RoomMessageEventContent},
25+
message::{MessageType, RoomMessageEventContent},
2926
name::RoomNameEventContent,
3027
topic::RedactedRoomTopicEventContent,
3128
},
@@ -48,21 +45,11 @@ async fn test_initial_events() {
4845
let timeline = TestTimeline::new();
4946
let mut stream = timeline.subscribe().await;
5047

48+
let f = EventFactory::new();
5149
timeline
5250
.inner
5351
.add_events_at(
54-
vec![
55-
SyncTimelineEvent::new(
56-
timeline
57-
.event_builder
58-
.make_sync_message_event(*ALICE, RoomMessageEventContent::text_plain("A")),
59-
),
60-
SyncTimelineEvent::new(
61-
timeline
62-
.event_builder
63-
.make_sync_message_event(*BOB, RoomMessageEventContent::text_plain("B")),
64-
),
65-
],
52+
vec![f.text_msg("A").sender(*ALICE), f.text_msg("B").sender(*BOB)],
6653
TimelineEnd::Back,
6754
RemoteEventOrigin::Sync,
6855
)
@@ -393,10 +380,11 @@ async fn test_sanitized() {
393380
let timeline = TestTimeline::new();
394381
let mut stream = timeline.subscribe().await;
395382

383+
let f = EventFactory::new();
384+
396385
timeline
397-
.handle_live_message_event(
398-
&ALICE,
399-
RoomMessageEventContent::text_html(
386+
.handle_live_event(
387+
f.text_html(
400388
"\
401389
@@Unknown text@@
402390
Some text\n\n\
@@ -409,7 +397,8 @@ async fn test_sanitized() {
409397
<p>Some text</p>\
410398
<code unknown=\"code\">Some code</code>\
411399
",
412-
),
400+
)
401+
.sender(&ALICE),
413402
)
414403
.await;
415404

@@ -435,12 +424,8 @@ async fn test_reply() {
435424
let timeline = TestTimeline::new();
436425
let mut stream = timeline.subscribe().await;
437426

438-
timeline
439-
.handle_live_message_event(
440-
&ALICE,
441-
RoomMessageEventContent::text_plain("I want you to reply"),
442-
)
443-
.await;
427+
let f = EventFactory::new();
428+
timeline.handle_live_event(f.text_msg("I want you to reply").sender(&ALICE)).await;
444429

445430
let item = assert_next_matches!(stream, VectorDiff::PushBack { value } => value);
446431
let first_event = item.as_event().unwrap();
@@ -466,13 +451,12 @@ async fn test_reply() {
466451
"> <{first_event_sender}> I want you to reply\n\
467452
I'm replying!"
468453
);
469-
let reply = assign!(RoomMessageEventContent::text_html(reply_plain, reply_formatted_body), {
470-
relates_to: Some(Relation::Reply {
471-
in_reply_to: InReplyTo::new(first_event_id.to_owned()),
472-
}),
473-
});
474454

475-
timeline.handle_live_message_event(&BOB, reply).await;
455+
timeline
456+
.handle_live_event(
457+
f.text_html(reply_plain, reply_formatted_body).reply_to(first_event_id).sender(&BOB),
458+
)
459+
.await;
476460

477461
let item = assert_next_matches!(stream, VectorDiff::PushBack { value } => value);
478462
assert_let!(TimelineItemContent::Message(message) = item.as_event().unwrap().content());
@@ -492,12 +476,8 @@ async fn test_thread() {
492476
let timeline = TestTimeline::new();
493477
let mut stream = timeline.subscribe().await;
494478

495-
timeline
496-
.handle_live_message_event(
497-
&ALICE,
498-
RoomMessageEventContent::text_plain("I want you to reply"),
499-
)
500-
.await;
479+
let f = EventFactory::new();
480+
timeline.handle_live_event(f.text_msg("I want you to reply").sender(&ALICE)).await;
501481

502482
let item = assert_next_matches!(stream, VectorDiff::PushBack { value } => value);
503483
let first_event = item.as_event().unwrap();
@@ -506,13 +486,13 @@ async fn test_thread() {
506486
let day_divider = assert_next_matches!(stream, VectorDiff::PushFront { value } => value);
507487
assert!(day_divider.is_day_divider());
508488

509-
let reply = assign!(RoomMessageEventContent::text_plain("I'm replying in a thread"), {
510-
relates_to: Some(Relation::Thread(
511-
Thread::plain(first_event_id.to_owned(), first_event_id.to_owned()),
512-
))
513-
});
514-
515-
timeline.handle_live_message_event(&BOB, reply).await;
489+
timeline
490+
.handle_live_event(
491+
f.text_msg("I'm replying in a thread")
492+
.sender(&BOB)
493+
.in_thread(first_event_id, first_event_id),
494+
)
495+
.await;
516496

517497
let item = assert_next_matches!(stream, VectorDiff::PushBack { value } => value);
518498
assert_let!(TimelineItemContent::Message(message) = item.as_event().unwrap().content());

crates/matrix-sdk-ui/src/timeline/tests/echo.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ async fn test_remote_echo_full_trip() {
131131
async fn test_remote_echo_new_position() {
132132
let timeline = TestTimeline::new();
133133
let mut stream = timeline.subscribe().await;
134+
let f = EventFactory::new();
134135

135136
// Given a local event…
136137
let txn_id = timeline
@@ -147,7 +148,7 @@ async fn test_remote_echo_new_position() {
147148
assert!(day_divider.is_day_divider());
148149

149150
// … and another event that comes back before the remote echo
150-
timeline.handle_live_message_event(&BOB, RoomMessageEventContent::text_plain("test")).await;
151+
timeline.handle_live_event(f.text_msg("test").sender(&BOB)).await;
151152

152153
// … and is inserted before the local echo item
153154
let bob_message = assert_next_matches!(stream, VectorDiff::PushFront { value } => value);
@@ -187,8 +188,9 @@ async fn test_day_divider_duplication() {
187188
let timeline = TestTimeline::new();
188189

189190
// Given two remote events from one day, and a local event from another day…
190-
timeline.handle_live_message_event(&BOB, RoomMessageEventContent::text_plain("A")).await;
191-
timeline.handle_live_message_event(&BOB, RoomMessageEventContent::text_plain("B")).await;
191+
let f = EventFactory::new().sender(&BOB);
192+
timeline.handle_live_event(f.text_msg("A")).await;
193+
timeline.handle_live_event(f.text_msg("B")).await;
192194
timeline
193195
.handle_local_event(AnyMessageLikeEventContent::RoomMessage(
194196
RoomMessageEventContent::text_plain("C"),

crates/matrix-sdk-ui/src/timeline/tests/edit.rs

Lines changed: 23 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,10 @@
1414

1515
use assert_matches2::assert_let;
1616
use eyeball_im::VectorDiff;
17+
use matrix_sdk::test_utils::events::EventFactory;
1718
use matrix_sdk_test::{async_test, sync_timeline_event, ALICE};
1819
use ruma::{
19-
assign,
20-
events::{
21-
relation::Replacement,
22-
room::message::{
23-
self, MessageType, RedactedRoomMessageEventContent, RoomMessageEventContent,
24-
},
25-
},
20+
events::room::message::{MessageType, RedactedRoomMessageEventContent},
2621
server_name, EventId,
2722
};
2823
use stream_assert::assert_next_matches;
@@ -35,20 +30,21 @@ async fn test_live_redacted() {
3530
let timeline = TestTimeline::new();
3631
let mut stream = timeline.subscribe().await;
3732

33+
let f = EventFactory::new();
3834
timeline
3935
.handle_live_redacted_message_event(*ALICE, RedactedRoomMessageEventContent::new())
4036
.await;
4137
let item = assert_next_matches!(stream, VectorDiff::PushBack { value } => value);
4238

4339
let redacted_event_id = item.as_event().unwrap().event_id().unwrap();
4440

45-
let edit = assign!(RoomMessageEventContent::text_plain(" * test"), {
46-
relates_to: Some(message::Relation::Replacement(Replacement::new(
47-
redacted_event_id.to_owned(),
48-
MessageType::text_plain("test").into(),
49-
))),
50-
});
51-
timeline.handle_live_message_event(&ALICE, edit).await;
41+
timeline
42+
.handle_live_event(
43+
f.text_msg(" * test")
44+
.sender(&ALICE)
45+
.edit(redacted_event_id, MessageType::text_plain("test").into()),
46+
)
47+
.await;
5248

5349
assert_eq!(timeline.inner.items().await.len(), 2);
5450

@@ -61,13 +57,10 @@ async fn test_live_sanitized() {
6157
let timeline = TestTimeline::new();
6258
let mut stream = timeline.subscribe().await;
6359

60+
let f = EventFactory::new();
6461
timeline
65-
.handle_live_message_event(
66-
&ALICE,
67-
RoomMessageEventContent::text_html(
68-
"**original** message",
69-
"<strong>original</strong> message",
70-
),
62+
.handle_live_event(
63+
f.text_html("**original** message", "<strong>original</strong> message").sender(&ALICE),
7164
)
7265
.await;
7366

@@ -85,19 +78,16 @@ async fn test_live_sanitized() {
8578

8679
let new_plain_content = "!!edited!! **better** message";
8780
let new_html_content = "<edited/> <strong>better</strong> message";
88-
let edit = assign!(
89-
RoomMessageEventContent::text_html(
90-
format!("* {}", new_plain_content),
91-
format!("* {}", new_html_content)
92-
),
93-
{
94-
relates_to: Some(message::Relation::Replacement(Replacement::new(
95-
first_event_id.to_owned(),
96-
MessageType::text_html(new_plain_content, new_html_content).into(),
97-
))),
98-
}
99-
);
100-
timeline.handle_live_message_event(&ALICE, edit).await;
81+
timeline
82+
.handle_live_event(
83+
f.text_html(format!("* {}", new_plain_content), format!("* {}", new_html_content))
84+
.sender(&ALICE)
85+
.edit(
86+
first_event_id,
87+
MessageType::text_html(new_plain_content, new_html_content).into(),
88+
),
89+
)
90+
.await;
10191

10292
let item = assert_next_matches!(stream, VectorDiff::Set { index: 1, value } => value);
10393
let first_event = item.as_event().unwrap();

0 commit comments

Comments
 (0)