From 9c2e2238ed2dadb4a145dc6a2760c0fd2d444fcb Mon Sep 17 00:00:00 2001 From: Ivan Enderlin Date: Thu, 16 Mar 2023 15:49:26 +0100 Subject: [PATCH] test(sdk): Add a test for `SlidingSyncList::ranges`. --- .../matrix-sdk/src/sliding_sync/list/mod.rs | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/crates/matrix-sdk/src/sliding_sync/list/mod.rs b/crates/matrix-sdk/src/sliding_sync/list/mod.rs index 4efa3c076..86604a52f 100644 --- a/crates/matrix-sdk/src/sliding_sync/list/mod.rs +++ b/crates/matrix-sdk/src/sliding_sync/list/mod.rs @@ -841,6 +841,32 @@ mod tests { assert_eq!(new_list.is_cold.load(Ordering::SeqCst), false); } + #[test] + fn test_sliding_sync_list_ranges() { + let list = SlidingSyncList::builder() + .name("foo") + .sync_mode(SlidingSyncMode::Selective) + .ranges(vec![(uint!(0), uint!(1)), (uint!(2), uint!(3))]) + .build() + .unwrap(); + + { + let lock = list.ranges.read().unwrap(); + let ranges = Observable::get(&lock); + + assert_eq!(ranges, &[(uint!(0), uint!(1)), (uint!(2), uint!(3))]); + } + + list.ranges(vec![(uint!(4), uint!(5)), (uint!(6), uint!(7))]); + + { + let lock = list.ranges.read().unwrap(); + let ranges = Observable::get(&lock); + + assert_eq!(ranges, &[(uint!(4), uint!(5)), (uint!(6), uint!(7))]); + } + } + #[test] fn test_room_list_entry_is_empty_or_invalidated() { let room_id = room_id!("!foo:bar.org");