refactor(test): deduplicate test helper related to local latest event

This commit is contained in:
Benjamin Bouvier
2026-01-12 14:29:58 +01:00
parent b1ca2bbbb5
commit df49cbb44d
2 changed files with 31 additions and 46 deletions
@@ -284,26 +284,15 @@ mod tests_latest_event {
};
use stream_assert::{assert_next_matches, assert_pending};
use super::{
LatestEvent, LatestEventValue, LocalLatestEventValue, SerializableEventContent, With,
};
use super::{LatestEvent, LatestEventValue, SerializableEventContent, With};
use crate::{
client::WeakClient,
latest_events::local_room_message,
room::WeakRoom,
send_queue::{LocalEcho, LocalEchoContent, RoomSendQueue, RoomSendQueueUpdate, SendHandle},
test_utils::mocks::MatrixMockServer,
};
fn local_room_message(body: &str) -> LocalLatestEventValue {
LocalLatestEventValue {
timestamp: MilliSecondsSinceUnixEpoch::now(),
content: SerializableEventContent::new(&AnyMessageLikeEventContent::RoomMessage(
RoomMessageEventContent::text_plain(body),
))
.unwrap(),
}
}
fn new_local_echo_content(
room_send_queue: &RoomSendQueue,
transaction_id: &OwnedTransactionId,
@@ -1743,7 +1732,7 @@ mod tests_latest_event_content {
mod tests_latest_event_values_for_local_events {
use assert_matches::assert_matches;
use ruma::{
MilliSecondsSinceUnixEpoch, OwnedTransactionId,
OwnedTransactionId,
events::{AnyMessageLikeEventContent, room::message::RoomMessageEventContent},
owned_event_id,
serde::Raw,
@@ -1752,8 +1741,9 @@ mod tests_latest_event_values_for_local_events {
use super::{
LatestEventValue, LatestEventValuesForLocalEvents, LocalLatestEventValue,
RemoteLatestEventValue, SerializableEventContent,
RemoteLatestEventValue,
};
use crate::latest_events::local_room_message;
fn remote_room_message(body: &str) -> RemoteLatestEventValue {
RemoteLatestEventValue::from_plaintext(
@@ -1771,16 +1761,6 @@ mod tests_latest_event_values_for_local_events {
)
}
fn local_room_message(body: &str) -> LocalLatestEventValue {
LocalLatestEventValue {
timestamp: MilliSecondsSinceUnixEpoch::now(),
content: SerializableEventContent::new(&AnyMessageLikeEventContent::RoomMessage(
RoomMessageEventContent::text_plain(body),
))
.unwrap(),
}
}
#[test]
fn test_last() {
let mut buffer = LatestEventValuesForLocalEvents::new();
+26 -21
View File
@@ -582,6 +582,23 @@ async fn compute_latest_events(
}
}
#[cfg(test)]
fn local_room_message(body: &str) -> LocalLatestEventValue {
use matrix_sdk_base::store::SerializableEventContent;
use ruma::{
MilliSecondsSinceUnixEpoch,
events::{AnyMessageLikeEventContent, room::message::RoomMessageEventContent},
};
LocalLatestEventValue {
timestamp: MilliSecondsSinceUnixEpoch::now(),
content: SerializableEventContent::new(&AnyMessageLikeEventContent::RoomMessage(
RoomMessageEventContent::text_plain(body),
))
.unwrap(),
}
}
#[cfg(all(test, not(target_family = "wasm")))]
mod tests {
use std::{collections::HashMap, ops::Not};
@@ -591,37 +608,25 @@ mod tests {
RoomState,
deserialized_responses::TimelineEventKind,
linked_chunk::{ChunkIdentifier, LinkedChunkId, Position, Update},
store::SerializableEventContent,
};
use matrix_sdk_test::{JoinedRoomBuilder, async_test, event_factory::EventFactory};
use ruma::{
MilliSecondsSinceUnixEpoch, OwnedTransactionId, event_id,
events::{
AnyMessageLikeEventContent, AnySyncMessageLikeEvent, AnySyncTimelineEvent,
SyncMessageLikeEvent, room::message::RoomMessageEventContent,
},
OwnedTransactionId, event_id,
events::{AnySyncMessageLikeEvent, AnySyncTimelineEvent, SyncMessageLikeEvent},
owned_room_id, room_id, user_id,
};
use stream_assert::assert_pending;
use tokio::task::yield_now;
use super::{
LatestEventValue, LocalLatestEventValue, RegisteredRooms, RemoteLatestEventValue,
RoomEventCacheGenericUpdate, RoomLatestEvents, RoomSendQueueUpdate, RwLock,
SendQueueUpdate, WeakClient, WeakRoom, With, broadcast,
listen_to_event_cache_and_send_queue_updates, mpsc,
LatestEventValue, RegisteredRooms, RemoteLatestEventValue, RoomEventCacheGenericUpdate,
RoomLatestEvents, RoomSendQueueUpdate, RwLock, SendQueueUpdate, WeakClient, WeakRoom, With,
broadcast, listen_to_event_cache_and_send_queue_updates, mpsc,
};
use crate::{
latest_events::{LatestEventQueueUpdate, local_room_message},
test_utils::mocks::MatrixMockServer,
};
use crate::{latest_events::LatestEventQueueUpdate, test_utils::mocks::MatrixMockServer};
fn local_room_message(body: &str) -> LocalLatestEventValue {
LocalLatestEventValue {
timestamp: MilliSecondsSinceUnixEpoch::now(),
content: SerializableEventContent::new(&AnyMessageLikeEventContent::RoomMessage(
RoomMessageEventContent::text_plain(body),
))
.unwrap(),
}
}
#[async_test]
async fn test_latest_events_are_lazy() {