1- use std:: { future:: ready, ops:: ControlFlow , sync :: Arc , time:: Duration } ;
1+ use std:: { future:: ready, ops:: ControlFlow , time:: Duration } ;
22
33use assert_matches2:: { assert_let, assert_matches} ;
44use 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 } ;
1411use 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]
124121async 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