blob: 755bdb1f4acb4cf414ee55b2c9585d60258bfefb (
plain)
use happylock::{Mutex, ThreadKey};
#[test]
fn no_new_threadkey_when_forgetting_lock() {
let key = ThreadKey::get().unwrap();
let mutex = Mutex::new("foo".to_string());
let guard = mutex.lock(key);
std::mem::forget(guard);
assert!(ThreadKey::get().is_none());
}
#[test]
fn no_new_threadkey_in_scoped_lock() {
let mut key = ThreadKey::get().unwrap();
let mutex = Mutex::new("foo".to_string());
mutex.scoped_lock(&mut key, |_| {
assert!(ThreadKey::get().is_none());
});
mutex.lock(key);
}
|