diff --git a/testing/matrix-sdk-test/src/event_factory.rs b/testing/matrix-sdk-test/src/event_factory.rs index eabe9ecbf..3938db352 100644 --- a/testing/matrix-sdk-test/src/event_factory.rs +++ b/testing/matrix-sdk-test/src/event_factory.rs @@ -32,10 +32,11 @@ use ruma::{ AnyGlobalAccountDataEvent, AnyMessageLikeEvent, AnyStateEvent, AnyStrippedStateEvent, AnySyncEphemeralRoomEvent, AnySyncMessageLikeEvent, AnySyncStateEvent, AnySyncTimelineEvent, AnyTimelineEvent, BundledMessageLikeRelations, - EphemeralRoomEventContent, False, GlobalAccountDataEventContent, Mentions, - MessageLikeEvent, MessageLikeEventContent, RedactContent, RedactedMessageLikeEventContent, - RedactedStateEventContent, StateEvent, StateEventContent, StaticEventContent, - StaticStateEventContent, StrippedStateEvent, SyncMessageLikeEvent, SyncStateEvent, + EphemeralRoomEventContent, EventContentFromType, False, GlobalAccountDataEventContent, + Mentions, MessageLikeEvent, MessageLikeEventContent, PossiblyRedactedStateEventContent, + RedactContent, RedactedMessageLikeEventContent, RedactedStateEventContent, StateEvent, + StateEventContent, StaticEventContent, StaticStateEventContent, StrippedStateEvent, + SyncMessageLikeEvent, SyncStateEvent, beacon::BeaconEventContent, call::{SessionDescription, invite::CallInviteEventContent}, direct::{DirectEventContent, OwnedDirectUserIdentifier}, @@ -542,6 +543,15 @@ where } } +impl> From> for AnySyncTimelineEvent +where + E: Serialize, +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected sync timeline event") + } +} + impl> From> for Raw where E: Serialize, @@ -551,6 +561,15 @@ where } } +impl> From> for AnyTimelineEvent +where + E: Serialize, +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected timeline event") + } +} + impl> From> for Raw where @@ -561,6 +580,17 @@ where } } +impl> From> for AnyGlobalAccountDataEvent +where + E: Serialize, +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val) + .deserialize() + .expect("expected global account data") + } +} + impl> From> for TimelineEvent where E: Serialize, @@ -578,6 +608,14 @@ impl + StateEventContent> From + StateEventContent> From> + for AnySyncStateEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected sync state") + } +} + impl + StateEventContent> From> for Raw> where @@ -589,6 +627,18 @@ where } } +impl + StateEventContent> From> + for SyncStateEvent +where + E: StaticStateEventContent + RedactContent + EventContentFromType, + E::Redacted: RedactedStateEventContent::StateKey> + + EventContentFromType, +{ + fn from(val: EventBuilder) -> Self { + Raw::>::from(val).deserialize().expect("expected sync state") + } +} + impl + StateEventContent> From> for Raw { @@ -597,6 +647,14 @@ impl + StateEventContent> From + StateEventContent> From> + for AnyStateEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected state") + } +} + impl + StateEventContent> From> for Raw> where @@ -608,6 +666,18 @@ where } } +impl + StateEventContent> From> + for StateEvent +where + E: StaticStateEventContent + RedactContent + EventContentFromType, + E::Redacted: RedactedStateEventContent::StateKey> + + EventContentFromType, +{ + fn from(val: EventBuilder) -> Self { + Raw::>::from(val).deserialize().expect("expected state") + } +} + impl + StateEventContent> From> for Raw { @@ -616,6 +686,14 @@ impl + StateEventContent> From + StateEventContent> From> + for AnyStrippedStateEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected stripped state") + } +} + impl + StateEventContent> From> for Raw> where @@ -626,6 +704,19 @@ where } } +impl + StateEventContent> From> + for StrippedStateEvent +where + E: StaticStateEventContent, + E::PossiblyRedacted: PossiblyRedactedStateEventContent + EventContentFromType, +{ + fn from(val: EventBuilder) -> Self { + Raw::>::from(val) + .deserialize() + .expect("expected stripped state") + } +} + impl + EphemeralRoomEventContent> From> for Raw { @@ -634,6 +725,14 @@ impl + EphemeralRoomEventContent> From + EphemeralRoomEventContent> From> + for AnySyncEphemeralRoomEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected ephemeral") + } +} + impl + MessageLikeEventContent> From> for Raw { @@ -642,6 +741,14 @@ impl + MessageLikeEventContent> From + MessageLikeEventContent> From> + for AnySyncMessageLikeEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected sync message-like") + } +} + impl + MessageLikeEventContent> From> for Raw> where @@ -653,6 +760,17 @@ where } } +impl + MessageLikeEventContent> From> + for SyncMessageLikeEvent +where + E: RedactContent + EventContentFromType, + E::Redacted: RedactedMessageLikeEventContent + EventContentFromType, +{ + fn from(val: EventBuilder) -> Self { + Raw::>::from(val).deserialize().expect("expected sync message-like") + } +} + impl + MessageLikeEventContent> From> for Raw { @@ -661,6 +779,14 @@ impl + MessageLikeEventContent> From + MessageLikeEventContent> From> + for AnyMessageLikeEvent +{ + fn from(val: EventBuilder) -> Self { + Raw::::from(val).deserialize().expect("expected message-like") + } +} + impl + MessageLikeEventContent> From> for Raw> where @@ -672,6 +798,17 @@ where } } +impl + MessageLikeEventContent> From> + for MessageLikeEvent +where + E: RedactContent + EventContentFromType, + E::Redacted: RedactedMessageLikeEventContent + EventContentFromType, +{ + fn from(val: EventBuilder) -> Self { + Raw::>::from(val).deserialize().expect("expected message-like") + } +} + #[derive(Debug, Default)] pub struct EventFactory { next_ts: AtomicU64,