summaryrefslogtreecommitdiffstats
path: root/third_party/rust/tokio/tests/sync_errors.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/tokio/tests/sync_errors.rs')
-rw-r--r--third_party/rust/tokio/tests/sync_errors.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/third_party/rust/tokio/tests/sync_errors.rs b/third_party/rust/tokio/tests/sync_errors.rs
new file mode 100644
index 0000000000..2eac585d40
--- /dev/null
+++ b/third_party/rust/tokio/tests/sync_errors.rs
@@ -0,0 +1,30 @@
+#![warn(rust_2018_idioms)]
+#![cfg(feature = "sync")]
+
+#[cfg(target_arch = "wasm32")]
+use wasm_bindgen_test::wasm_bindgen_test as test;
+
+fn is_error<T: std::error::Error + Send + Sync>() {}
+
+#[test]
+fn mpsc_error_bound() {
+ use tokio::sync::mpsc::error;
+
+ is_error::<error::SendError<()>>();
+ is_error::<error::TrySendError<()>>();
+}
+
+#[test]
+fn oneshot_error_bound() {
+ use tokio::sync::oneshot::error;
+
+ is_error::<error::RecvError>();
+ is_error::<error::TryRecvError>();
+}
+
+#[test]
+fn watch_error_bound() {
+ use tokio::sync::watch::error;
+
+ is_error::<error::SendError<()>>();
+}