fix channel tests

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
pull/585/head
Yoshua Wuyts 5 years ago
parent 7885c245c5
commit 19fd7a4084

@ -18,13 +18,13 @@ fn smoke() {
let (s, r) = channel(1); let (s, r) = channel(1);
s.send(7).await; s.send(7).await;
assert_eq!(r.recv().await, Some(7)); assert_eq!(r.recv().await.unwrap(), 7);
s.send(8).await; s.send(8).await;
assert_eq!(r.recv().await, Some(8)); assert_eq!(r.recv().await.unwrap(), 8);
drop(s); drop(s);
assert_eq!(r.recv().await, None); assert!(r.recv().await.is_err());
}); });
task::block_on(async { task::block_on(async {
@ -74,7 +74,7 @@ fn len_empty_full() {
assert_eq!(r.is_empty(), false); assert_eq!(r.is_empty(), false);
assert_eq!(r.is_full(), true); assert_eq!(r.is_full(), true);
r.recv().await; let _ = r.recv().await;
assert_eq!(s.len(), 1); assert_eq!(s.len(), 1);
assert_eq!(s.is_empty(), false); assert_eq!(s.is_empty(), false);
@ -91,12 +91,12 @@ fn recv() {
let (s, r) = channel(100); let (s, r) = channel(100);
task::spawn(async move { task::spawn(async move {
assert_eq!(r.recv().await, Some(7)); assert_eq!(r.recv().await.unwrap(), 7);
task::sleep(ms(1000)).await; task::sleep(ms(1000)).await;
assert_eq!(r.recv().await, Some(8)); assert_eq!(r.recv().await.unwrap(), 8);
task::sleep(ms(1000)).await; task::sleep(ms(1000)).await;
assert_eq!(r.recv().await, Some(9)); assert_eq!(r.recv().await.unwrap(), 9);
assert_eq!(r.recv().await, None); assert!(r.recv().await.is_err());
}); });
task::sleep(ms(1500)).await; task::sleep(ms(1500)).await;
@ -122,9 +122,9 @@ fn send() {
}); });
task::sleep(ms(1500)).await; task::sleep(ms(1500)).await;
assert_eq!(r.recv().await, Some(7)); assert_eq!(r.recv().await.unwrap(), 7);
assert_eq!(r.recv().await, Some(8)); assert_eq!(r.recv().await.unwrap(), 8);
assert_eq!(r.recv().await, Some(9)); assert_eq!(r.recv().await.unwrap(), 9);
}) })
} }
@ -139,10 +139,10 @@ fn recv_after_disconnect() {
drop(s); drop(s);
assert_eq!(r.recv().await, Some(1)); assert_eq!(r.recv().await.unwrap(), 1);
assert_eq!(r.recv().await, Some(2)); assert_eq!(r.recv().await.unwrap(), 2);
assert_eq!(r.recv().await, Some(3)); assert_eq!(r.recv().await.unwrap(), 3);
assert_eq!(r.recv().await, None); assert!(r.recv().await.is_err());
}) })
} }
@ -164,7 +164,7 @@ fn len() {
} }
for i in 0..50 { for i in 0..50 {
r.recv().await; let _ = r.recv().await;
assert_eq!(r.len(), 50 - i - 1); assert_eq!(r.len(), 50 - i - 1);
} }
} }
@ -188,7 +188,7 @@ fn len() {
let r = r.clone(); let r = r.clone();
async move { async move {
for i in 0..COUNT { for i in 0..COUNT {
assert_eq!(r.recv().await, Some(i)); assert_eq!(r.recv().await.unwrap(), i);
let len = r.len(); let len = r.len();
assert!(len <= CAP); assert!(len <= CAP);
} }
@ -214,7 +214,7 @@ fn disconnect_wakes_receiver() {
let (s, r) = channel::<()>(1); let (s, r) = channel::<()>(1);
let child = task::spawn(async move { let child = task::spawn(async move {
assert_eq!(r.recv().await, None); assert!(r.recv().await.is_err());
}); });
task::sleep(ms(1000)).await; task::sleep(ms(1000)).await;
@ -233,9 +233,9 @@ fn spsc() {
let child = task::spawn(async move { let child = task::spawn(async move {
for i in 0..COUNT { for i in 0..COUNT {
assert_eq!(r.recv().await, Some(i)); assert_eq!(r.recv().await.unwrap(), i);
} }
assert_eq!(r.recv().await, None); assert!(r.recv().await.is_err());
}); });
for i in 0..COUNT { for i in 0..COUNT {

Loading…
Cancel
Save