From f90245a3f9136a57d6e4e24f2e222944dd4af20c Mon Sep 17 00:00:00 2001 From: Oussama Teffahi Date: Tue, 10 Dec 2024 16:36:59 +0100 Subject: [PATCH] Add unit test for undeclare deadlock --- zenoh/tests/session.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/zenoh/tests/session.rs b/zenoh/tests/session.rs index 3e84249b8..5a1837844 100644 --- a/zenoh/tests/session.rs +++ b/zenoh/tests/session.rs @@ -430,3 +430,15 @@ async fn zenoh_session_close_in_background() { }; ztimeout!(close_all); } + +#[cfg(feature = "unstable")] +#[tokio::test(flavor = "multi_thread", worker_threads = 4)] +async fn test_undeclare_subscribers_same_keyexpr() { + let key_expr = "test/undeclare/subscribers"; + let session = zenoh::open(zenoh::Config::default()).await.unwrap(); + let sub1 = session.declare_subscriber(key_expr).await.unwrap(); + let sub2 = session.declare_subscriber(key_expr).await.unwrap(); + tokio::time::sleep(SLEEP).await; + ztimeout!(sub1.undeclare()).unwrap(); + ztimeout!(sub2.undeclare()).unwrap(); +}