Skip to content

Commit aa5e68e

Browse files
committed
task(tests): move error_too_large to the generic endpoint
So it can be reused in more contexts than just the sending of an event, but also for uploads.
1 parent dbce8e7 commit aa5e68e

File tree

1 file changed

+40
-40
lines changed
  • crates/matrix-sdk/src/test_utils

1 file changed

+40
-40
lines changed

crates/matrix-sdk/src/test_utils/mocks.rs

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -669,6 +669,46 @@ impl<'a, T> MockEndpoint<'a, T> {
669669
);
670670
MatrixMock { server: self.server, mock }
671671
}
672+
673+
/// Returns an endpoint that emulates a permanent failure error (e.g. event
674+
/// is too large).
675+
///
676+
/// # Examples
677+
/// ```
678+
/// # tokio_test::block_on(async {
679+
/// use matrix_sdk::{ruma::{room_id, event_id}, test_utils::mocks::MatrixMockServer};
680+
/// use serde_json::json;
681+
///
682+
/// let mock_server = MatrixMockServer::new().await;
683+
/// let client = mock_server.client_builder().build().await;
684+
///
685+
/// mock_server.mock_room_state_encryption().plain().mount().await;
686+
///
687+
/// let room = mock_server
688+
/// .sync_joined_room(&client, room_id!("!room_id:localhost"))
689+
/// .await;
690+
///
691+
/// mock_server
692+
/// .mock_room_send()
693+
/// .error_too_large()
694+
/// .expect(1)
695+
/// .mount()
696+
/// .await;
697+
///
698+
/// room
699+
/// .send_raw("m.room.message", json!({ "body": "Hello world" }))
700+
/// .await.expect_err("The sending of the event should have failed");
701+
/// # anyhow::Ok(()) });
702+
/// ```
703+
pub fn error_too_large(self) -> MatrixMock<'a> {
704+
MatrixMock {
705+
mock: self.mock.respond_with(ResponseTemplate::new(413).set_body_json(json!({
706+
// From https://spec.matrix.org/v1.10/client-server-api/#standard-error-response
707+
"errcode": "M_TOO_LARGE",
708+
}))),
709+
server: self.server,
710+
}
711+
}
672712
}
673713

674714
/// A prebuilt mock for sending an event in a room.
@@ -759,46 +799,6 @@ impl<'a> MockEndpoint<'a, RoomSendEndpoint> {
759799
pub fn ok(self, returned_event_id: impl Into<OwnedEventId>) -> MatrixMock<'a> {
760800
self.ok_with_event_id(returned_event_id.into())
761801
}
762-
763-
/// Returns a send endpoint that emulates a permanent failure (event is too
764-
/// large).
765-
///
766-
/// # Examples
767-
/// ```
768-
/// # tokio_test::block_on(async {
769-
/// use matrix_sdk::{ruma::{room_id, event_id}, test_utils::mocks::MatrixMockServer};
770-
/// use serde_json::json;
771-
///
772-
/// let mock_server = MatrixMockServer::new().await;
773-
/// let client = mock_server.client_builder().build().await;
774-
///
775-
/// mock_server.mock_room_state_encryption().plain().mount().await;
776-
///
777-
/// let room = mock_server
778-
/// .sync_joined_room(&client, room_id!("!room_id:localhost"))
779-
/// .await;
780-
///
781-
/// mock_server
782-
/// .mock_room_send()
783-
/// .error500()
784-
/// .expect(1)
785-
/// .mount()
786-
/// .await;
787-
///
788-
/// room
789-
/// .send_raw("m.room.message", json!({ "body": "Hello world" }))
790-
/// .await.expect_err("The sending of the event should have failed");
791-
/// # anyhow::Ok(()) });
792-
/// ```
793-
pub fn error_too_large(self) -> MatrixMock<'a> {
794-
MatrixMock {
795-
mock: self.mock.respond_with(ResponseTemplate::new(413).set_body_json(json!({
796-
// From https://spec.matrix.org/v1.10/client-server-api/#standard-error-response
797-
"errcode": "M_TOO_LARGE",
798-
}))),
799-
server: self.server,
800-
}
801-
}
802802
}
803803

804804
/// A prebuilt mock for running sync v2.

0 commit comments

Comments
 (0)