Skip to content

Commit e0b1b5d

Browse files
committed
test: don't use the event cache storage but regular syncs instead
1 parent 1a63d8f commit e0b1b5d

File tree

2 files changed

+28
-89
lines changed

2 files changed

+28
-89
lines changed

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

Lines changed: 11 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,19 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
use std::{sync::Arc, time::Duration};
15+
use std::time::Duration;
1616

1717
use as_variant::as_variant;
1818
use assert_matches::assert_matches;
1919
use assert_matches2::assert_let;
2020
use eyeball_im::VectorDiff;
2121
use futures_util::{FutureExt, StreamExt};
2222
use matrix_sdk::{
23-
config::{StoreConfig, SyncSettings},
24-
linked_chunk::{ChunkIdentifier, Update},
23+
config::SyncSettings,
2524
room::edit::EditedContent,
2625
test_utils::{logged_in_client_with_server, mocks::MatrixMockServer},
2726
Client,
2827
};
29-
use matrix_sdk_base::event_cache::{
30-
store::{EventCacheStore, MemoryStore},
31-
Gap,
32-
};
3328
use matrix_sdk_test::{
3429
async_test, event_factory::EventFactory, mocks::mock_encryption_state, JoinedRoomBuilder,
3530
SyncResponseBuilder, ALICE, BOB,
@@ -864,47 +859,20 @@ impl PendingEditHelper {
864859
async fn new() -> Self {
865860
let room_id = room_id!("!a98sd12bjh:example.org");
866861

867-
let event_cache_store = Arc::new(MemoryStore::new());
868862
let server = MatrixMockServer::new().await;
863+
let client = server.client_builder().build().await;
864+
865+
client.event_cache().subscribe().unwrap();
869866

870-
let client = server
871-
.client_builder()
872-
.store_config(
873-
StoreConfig::new("hodor".to_owned()).event_cache_store(event_cache_store.clone()),
867+
// Fill the initial prev-batch token to avoid waiting for it later.
868+
server
869+
.sync_room(
870+
&client,
871+
JoinedRoomBuilder::new(room_id)
872+
.set_timeline_prev_batch("prev-batch-token".to_owned()),
874873
)
875-
.build()
876874
.await;
877875

878-
{
879-
// Fill the initial prev-batch token to avoid waiting for it later.
880-
let ec = client.event_cache();
881-
ec.subscribe().unwrap();
882-
ec.enable_storage().unwrap();
883-
884-
event_cache_store
885-
.handle_linked_chunk_updates(
886-
room_id,
887-
vec![
888-
// Maintain the invariant that the first chunk is an items.
889-
Update::NewItemsChunk {
890-
previous: None,
891-
new: ChunkIdentifier::new(0),
892-
next: None,
893-
},
894-
// Mind the gap!
895-
Update::NewGapChunk {
896-
previous: Some(ChunkIdentifier::new(0)),
897-
new: ChunkIdentifier::new(1),
898-
next: None,
899-
gap: Gap { prev_token: "prev-batch-token".to_owned() },
900-
},
901-
],
902-
)
903-
.await
904-
.unwrap();
905-
}
906-
907-
server.sync_joined_room(&client, room_id).await;
908876
server.mock_room_state_encryption().plain().mount().await;
909877

910878
let room = client.get_room(room_id).unwrap();

crates/matrix-sdk/tests/integration/event_cache.rs

Lines changed: 17 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
1-
use std::{future::ready, ops::ControlFlow, sync::Arc, time::Duration};
1+
use std::{future::ready, ops::ControlFlow, time::Duration};
22

33
use assert_matches2::{assert_let, assert_matches};
44
use matrix_sdk::{
5-
config::StoreConfig,
65
event_cache::{
76
paginator::PaginatorState, BackPaginationOutcome, EventCacheError, RoomEventCacheUpdate,
87
TimelineHasBeenResetWhilePaginating,
98
},
10-
linked_chunk::{ChunkIdentifier, Position, Update},
119
test_utils::{assert_event_matches_msg, logged_in_client_with_server, mocks::MatrixMockServer},
1210
};
13-
use matrix_sdk_base::event_cache::store::{EventCacheStore, MemoryStore};
1411
use matrix_sdk_test::{
1512
async_test, event_factory::EventFactory, GlobalAccountDataTestEvent, JoinedRoomBuilder,
1613
SyncResponseBuilder,
@@ -123,19 +120,10 @@ async fn test_event_cache_receives_events() {
123120
#[async_test]
124121
async fn test_ignored_unignored() {
125122
let server = MatrixMockServer::new().await;
126-
127-
let event_cache_store = Arc::new(MemoryStore::new());
128-
let client = server
129-
.client_builder()
130-
.store_config(
131-
StoreConfig::new("hodor".to_owned()).event_cache_store(event_cache_store.clone()),
132-
)
133-
.build()
134-
.await;
123+
let client = server.client_builder().build().await;
135124

136125
// Immediately subscribe the event cache to sync updates.
137126
client.event_cache().subscribe().unwrap();
138-
client.event_cache().enable_storage().unwrap();
139127

140128
let room_id = room_id!("!omelette:fromage.fr");
141129
let other_room_id = room_id!("!galette:saucisse.bzh");
@@ -144,41 +132,24 @@ async fn test_ignored_unignored() {
144132
let ivan = user_id!("@ivan:lab.ch");
145133
let f = EventFactory::new();
146134

147-
// Given two rooms which add initial items,
148-
event_cache_store
149-
.handle_linked_chunk_updates(
150-
room_id,
151-
vec![
152-
Update::NewItemsChunk { previous: None, new: ChunkIdentifier::new(0), next: None },
153-
Update::PushItems {
154-
at: Position::new(ChunkIdentifier::new(0), 0),
155-
items: vec![
156-
f.text_msg("hey there").sender(dexter).into_sync(),
157-
f.text_msg("hoy!").sender(ivan).into_sync(),
158-
],
159-
},
160-
],
135+
// Given two known rooms with initial items,
136+
server
137+
.sync_room(
138+
&client,
139+
JoinedRoomBuilder::new(room_id).add_timeline_bulk(vec![
140+
f.text_msg("hey there").sender(dexter).into_raw_sync(),
141+
f.text_msg("hoy!").sender(ivan).into_raw_sync(),
142+
]),
161143
)
162-
.await
163-
.unwrap();
144+
.await;
164145

165-
event_cache_store
166-
.handle_linked_chunk_updates(
167-
other_room_id,
168-
vec![
169-
Update::NewItemsChunk { previous: None, new: ChunkIdentifier::new(0), next: None },
170-
Update::PushItems {
171-
at: Position::new(ChunkIdentifier::new(0), 0),
172-
items: vec![f.text_msg("demat!").sender(ivan).into_sync()],
173-
},
174-
],
146+
server
147+
.sync_room(
148+
&client,
149+
JoinedRoomBuilder::new(other_room_id)
150+
.add_timeline_bulk(vec![f.text_msg("demat!").sender(ivan).into_raw_sync()]),
175151
)
176-
.await
177-
.unwrap();
178-
179-
// If I get informed about these two rooms during sync,
180-
server.sync_joined_room(&client, room_id).await;
181-
server.sync_joined_room(&client, other_room_id).await;
152+
.await;
182153

183154
// And subscribe to the room,
184155
let room = client.get_room(room_id).unwrap();

0 commit comments

Comments
 (0)