From bfac815a5ed2a09d145cd6411df11ed0c66f504b Mon Sep 17 00:00:00 2001 From: Ivan Enderlin Date: Fri, 23 May 2025 10:46:31 +0200 Subject: [PATCH] test: `EventBuilder` can set predecessor. This patch adds the `predecessor` and `no_predecessor` methods on `EventBuilder`. This is helpful to configure the `predecessor` field. --- testing/matrix-sdk-test/src/event_factory.rs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/testing/matrix-sdk-test/src/event_factory.rs b/testing/matrix-sdk-test/src/event_factory.rs index 163afc7a8..d5cec598a 100644 --- a/testing/matrix-sdk-test/src/event_factory.rs +++ b/testing/matrix-sdk-test/src/event_factory.rs @@ -41,7 +41,7 @@ use ruma::{ room::{ avatar::{self, RoomAvatarEventContent}, canonical_alias::RoomCanonicalAliasEventContent, - create::RoomCreateEventContent, + create::{PreviousRoom, RoomCreateEventContent}, encrypted::{EncryptedEventScheme, RoomEncryptedEventContent}, member::{MembershipState, RoomMemberEventContent}, message::{ @@ -400,6 +400,20 @@ impl EventBuilder { } } +impl EventBuilder { + /// Define the predecessor fields. + pub fn predecessor(mut self, room_id: &RoomId, event_id: &EventId) -> Self { + self.content.predecessor = Some(PreviousRoom::new(room_id.to_owned(), event_id.to_owned())); + self + } + + /// Erase the predecessor if any. + pub fn no_predecessor(mut self) -> Self { + self.content.predecessor = None; + self + } +} + impl From> for Raw where E::EventType: Serialize,