From 280a61ad7b74019c7aad8b7306a0dd7cfb11359c Mon Sep 17 00:00:00 2001 From: Botahamec Date: Sun, 12 Jan 2025 15:04:01 -0500 Subject: More unit tests --- src/mutex.rs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/mutex.rs') diff --git a/src/mutex.rs b/src/mutex.rs index 004e5d4..99d0981 100644 --- a/src/mutex.rs +++ b/src/mutex.rs @@ -161,7 +161,7 @@ pub struct MutexGuard<'a, 'key: 'a, T: ?Sized + 'a, Key: Keyable + 'key, R: RawM #[cfg(test)] mod tests { - use crate::ThreadKey; + use crate::{LockCollection, ThreadKey}; use super::*; @@ -198,6 +198,21 @@ mod tests { assert_eq!(guard.to_string(), "Hello, world!".to_string()); } + #[test] + fn ord_works() { + let key = ThreadKey::get().unwrap(); + let mutex1: crate::Mutex<_> = Mutex::new(1); + let mutex2: crate::Mutex<_> = Mutex::new(2); + let mutex3: crate::Mutex<_> = Mutex::new(2); + let collection = LockCollection::try_new((&mutex1, &mutex2, &mutex3)).unwrap(); + + let guard = collection.lock(key); + assert!(guard.0 < guard.1); + assert!(guard.1 > guard.0); + assert!(guard.1 == guard.2); + assert!(guard.0 != guard.2) + } + #[test] fn dropping_guard_releases_mutex() { let mut key = ThreadKey::get().unwrap(); -- cgit v1.2.3