aboutsummaryrefslogtreecommitdiff
path: root/tests/task_join_map.rs
diff options
context:
space:
mode:
authorJeff Vander Stoep <jeffv@google.com>2024-02-05 14:19:11 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-02-05 14:19:11 +0000
commit646d9067cfe1430335326bd1a5ffe46d370addd2 (patch)
tree3044f4002ed695e6540a4969306b4304349073ce /tests/task_join_map.rs
parent3b1161ba9718578d32f382256dee18a97d01d180 (diff)
parenta7879fe08376d6c078eed44ffd47a14fb340af59 (diff)
downloadtokio-util-646d9067cfe1430335326bd1a5ffe46d370addd2.tar.gz
Upgrade tokio-util to 0.7.10 am: a7879fe083emu-34-2-dev
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/tokio-util/+/2950425 Change-Id: If80db06d7ac2be560713c61ae717d03ae2fcb068 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'tests/task_join_map.rs')
-rw-r--r--tests/task_join_map.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/task_join_map.rs b/tests/task_join_map.rs
index cef08b2..1ab5f9b 100644
--- a/tests/task_join_map.rs
+++ b/tests/task_join_map.rs
@@ -109,6 +109,30 @@ async fn alternating() {
}
}
+#[tokio::test]
+async fn test_keys() {
+ use std::collections::HashSet;
+
+ let mut map = JoinMap::new();
+
+ assert_eq!(map.len(), 0);
+ map.spawn(1, async {});
+ assert_eq!(map.len(), 1);
+ map.spawn(2, async {});
+ assert_eq!(map.len(), 2);
+
+ let keys = map.keys().collect::<HashSet<&u32>>();
+ assert!(keys.contains(&1));
+ assert!(keys.contains(&2));
+
+ let _ = map.join_next().await.unwrap();
+ let _ = map.join_next().await.unwrap();
+
+ assert_eq!(map.len(), 0);
+ let keys = map.keys().collect::<HashSet<&u32>>();
+ assert!(keys.is_empty());
+}
+
#[tokio::test(start_paused = true)]
async fn abort_by_key() {
let mut map = JoinMap::new();