aboutsummaryrefslogtreecommitdiff
path: root/tests/list.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/list.rs')
-rw-r--r--tests/list.rs53
1 files changed, 40 insertions, 13 deletions
diff --git a/tests/list.rs b/tests/list.rs
index f166a19..619e1fc 100644
--- a/tests/list.rs
+++ b/tests/list.rs
@@ -41,29 +41,29 @@ fn len_empty_full() {
let (s, r) = unbounded();
assert_eq!(s.len(), 0);
- assert_eq!(s.is_empty(), true);
- assert_eq!(s.is_full(), false);
+ assert!(s.is_empty());
+ assert!(!s.is_full());
assert_eq!(r.len(), 0);
- assert_eq!(r.is_empty(), true);
- assert_eq!(r.is_full(), false);
+ assert!(r.is_empty());
+ assert!(!r.is_full());
s.send(()).unwrap();
assert_eq!(s.len(), 1);
- assert_eq!(s.is_empty(), false);
- assert_eq!(s.is_full(), false);
+ assert!(!s.is_empty());
+ assert!(!s.is_full());
assert_eq!(r.len(), 1);
- assert_eq!(r.is_empty(), false);
- assert_eq!(r.is_full(), false);
+ assert!(!r.is_empty());
+ assert!(!r.is_full());
r.recv().unwrap();
assert_eq!(s.len(), 0);
- assert_eq!(s.is_empty(), true);
- assert_eq!(s.is_full(), false);
+ assert!(s.is_empty());
+ assert!(!s.is_full());
assert_eq!(r.len(), 0);
- assert_eq!(r.is_empty(), true);
- assert_eq!(r.is_full(), false);
+ assert!(r.is_empty());
+ assert!(!r.is_full());
}
#[test]
@@ -239,6 +239,9 @@ fn disconnect_wakes_receiver() {
#[test]
fn spsc() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 100_000;
let (s, r) = unbounded();
@@ -261,6 +264,9 @@ fn spsc() {
#[test]
fn mpmc() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 25_000;
const THREADS: usize = 4;
@@ -295,6 +301,9 @@ fn mpmc() {
#[test]
fn stress_oneshot() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 10_000;
for _ in 0..COUNT {
@@ -310,6 +319,9 @@ fn stress_oneshot() {
#[test]
fn stress_iter() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 100_000;
let (request_s, request_r) = unbounded();
@@ -371,8 +383,11 @@ fn stress_timeout_two_threads() {
.unwrap();
}
+#[cfg_attr(miri, ignore)] // Miri is too slow
#[test]
fn drops() {
+ const RUNS: usize = 100;
+
static DROPS: AtomicUsize = AtomicUsize::new(0);
#[derive(Debug, PartialEq)]
@@ -386,7 +401,7 @@ fn drops() {
let mut rng = thread_rng();
- for _ in 0..100 {
+ for _ in 0..RUNS {
let steps = rng.gen_range(0..10_000);
let additional = rng.gen_range(0..1000);
@@ -421,6 +436,9 @@ fn drops() {
#[test]
fn linearizable() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 25_000;
const THREADS: usize = 4;
@@ -441,6 +459,9 @@ fn linearizable() {
#[test]
fn fairness() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 10_000;
let (s1, r1) = unbounded::<()>();
@@ -463,6 +484,9 @@ fn fairness() {
#[test]
fn fairness_duplicates() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 10_000;
let (s, r) = unbounded();
@@ -496,6 +520,9 @@ fn recv_in_send() {
#[test]
fn channel_through_channel() {
+ #[cfg(miri)]
+ const COUNT: usize = 100;
+ #[cfg(not(miri))]
const COUNT: usize = 1000;
type T = Box<dyn Any + Send>;