summaryrefslogtreecommitdiff
path: root/vendor/rayon/tests/named-threads.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/rayon/tests/named-threads.rs')
-rw-r--r--vendor/rayon/tests/named-threads.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/vendor/rayon/tests/named-threads.rs b/vendor/rayon/tests/named-threads.rs
new file mode 100644
index 0000000..dadb37b
--- /dev/null
+++ b/vendor/rayon/tests/named-threads.rs
@@ -0,0 +1,25 @@
+use std::collections::HashSet;
+
+use rayon::prelude::*;
+use rayon::*;
+
+#[test]
+#[cfg_attr(any(target_os = "emscripten", target_family = "wasm"), ignore)]
+fn named_threads() {
+ ThreadPoolBuilder::new()
+ .thread_name(|i| format!("hello-name-test-{}", i))
+ .build_global()
+ .unwrap();
+
+ const N: usize = 10000;
+
+ let thread_names = (0..N)
+ .into_par_iter()
+ .flat_map(|_| ::std::thread::current().name().map(str::to_owned))
+ .collect::<HashSet<String>>();
+
+ let all_contains_name = thread_names
+ .iter()
+ .all(|name| name.starts_with("hello-name-test-"));
+ assert!(all_contains_name);
+}