summaryrefslogtreecommitdiffstats
path: root/tokio-test/tests/macros.rs
blob: a33fbad8ac723001fcc0d0321f3d8580fddd8721 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#![cfg(feature = "broken")]
#![warn(rust_2018_idioms)]

use futures::{future, Async, Future, Poll};
use tokio_macros::{assert_not_ready, assert_ready, assert_ready_eq};

#[test]
fn assert_ready() {
    let mut fut = future::ok::<(), ()>(());
    assert_ready!(fut.poll());
    let mut fut = future::ok::<(), ()>(());
    assert_ready!(fut.poll(), "some message");
}

#[test]
#[should_panic]
fn assert_ready_err() {
    let mut fut = future::err::<(), ()>(());
    assert_ready!(fut.poll());
}

#[test]
fn assert_not_ready() {
    let poll: Poll<(), ()> = Ok(Async::NotReady);
    assert_not_ready!(poll);
    assert_not_ready!(poll, "some message");
}

#[test]
#[should_panic]
fn assert_not_ready_err() {
    let mut fut = future::err::<(), ()>(());
    assert_not_ready!(fut.poll());
}

#[test]
fn assert_ready_eq() {
    let mut fut = future::ok::<(), ()>(());
    assert_ready_eq!(fut.poll(), ());
}