提交 f99d3317 authored 作者: Serhij S's avatar Serhij S

optimized insta tests

上级 2cbe39c4
......@@ -326,7 +326,7 @@ mod test {
event_matches!(Message::Temperature(_) | Message::Humidity(_)),
)
.unwrap();
for _ in 0..10 {
for _ in 0..3 {
sender.send(Message::Temperature(1.0));
sender.send(Message::Humidity(2.0));
sender.send(Message::Test);
......@@ -335,7 +335,7 @@ mod test {
while let Ok(msg) = recv.try_recv() {
messages.push(msg);
}
insta::assert_snapshot!(messages.len());
insta::assert_snapshot!(messages.len(), @"6");
insta::assert_debug_snapshot!(messages);
}
}
......@@ -325,7 +325,7 @@ mod test {
event_matches!(Message::Temperature(_) | Message::Humidity(_)),
)
.unwrap();
for _ in 0..10 {
for _ in 0..3 {
sender.send(Message::Temperature(1.0)).await;
sender.send(Message::Humidity(2.0)).await;
sender.send(Message::Test).await;
......@@ -334,7 +334,7 @@ mod test {
while let Ok(msg) = client1.try_recv() {
messages.push(msg);
}
insta::assert_snapshot!(messages.len());
insta::assert_snapshot!(messages.len(), @"6");
insta::assert_debug_snapshot!(messages);
}
}
......@@ -333,8 +333,7 @@ mod test {
}
messages.push(msg);
}
insta::assert_debug_snapshot!(messages.len());
insta::assert_debug_snapshot!(messages);
insta::assert_debug_snapshot!(messages.len(), @"20");
}
#[test]
......@@ -352,18 +351,15 @@ mod test {
thread::sleep(Duration::from_secs(1));
let mut c = 0;
let mut t = 0;
let mut messages = Vec::new();
while let Ok(msg) = rx.recv() {
match msg {
Message::Test(_) => c += 1,
Message::Temperature(_) => t += 1,
Message::Spam => {}
}
messages.push(msg);
}
insta::assert_snapshot!(c);
insta::assert_snapshot!(t);
insta::assert_debug_snapshot!(messages);
insta::assert_snapshot!(c, @"10");
insta::assert_snapshot!(t, @"1");
}
#[test]
......
......@@ -498,8 +498,7 @@ mod test {
}
messages.push(msg);
}
insta::assert_debug_snapshot!(messages.len());
insta::assert_debug_snapshot!(messages);
insta::assert_debug_snapshot!(messages.len(), @"20");
}
#[tokio::test]
......@@ -517,18 +516,15 @@ mod test {
thread::sleep(Duration::from_secs(1));
let mut c = 0;
let mut t = 0;
let mut messages = Vec::new();
while let Ok(msg) = rx.recv().await {
match msg {
Message::Test(_) => c += 1,
Message::Temperature(_) => t += 1,
Message::Spam => {}
}
messages.push(msg);
}
insta::assert_snapshot!(c);
insta::assert_snapshot!(t);
insta::assert_debug_snapshot!(messages);
insta::assert_snapshot!(c, @"10");
insta::assert_snapshot!(t, @"1");
}
#[tokio::test]
......
......@@ -21,46 +21,4 @@ expression: messages
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
]
---
source: src/hub.rs
expression: messages.len()
---
20
......@@ -21,46 +21,4 @@ expression: messages
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
Temperature(
1.0,
),
Humidity(
2.0,
),
]
---
source: src/hub_async.rs
expression: messages.len()
---
20
---
source: src/pchannel.rs
expression: messages
---
[
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
]
---
source: src/pchannel.rs
expression: messages.len()
---
20
---
source: src/pchannel.rs
expression: messages
---
[
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Temperature(
123.0,
),
]
---
source: src/pchannel_async.rs
expression: messages
---
[
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
Test(
123,
),
Temperature(
123.0,
),
]
---
source: src/pchannel_async.rs
expression: messages.len()
---
20
---
source: src/pchannel_async.rs
expression: messages
---
[
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Test(
123,
),
Spam,
Temperature(
123.0,
),
]
---
source: src/ttlcell.rs
expression: opt.as_ref().copied()
---
None
---
source: src/ttlcell.rs
expression: opt.as_ref().copied()
---
Some(
30,
)
---
source: src/ttlcell.rs
expression: opt.as_ref().copied()
---
None
---
source: src/ttlcell.rs
expression: opt.as_ref().copied()
---
Some(
25,
)
......@@ -146,42 +146,62 @@ mod test {
let ttl = Duration::from_millis(10);
let mut opt = TtlCell::new_with_value(ttl, 25);
thread::sleep(ttl / 2);
insta::assert_debug_snapshot!(opt.as_ref().copied());
insta::assert_debug_snapshot!(opt.as_ref().copied(), @r###"
Some(
25,
)
"###);
thread::sleep(ttl);
insta::assert_debug_snapshot!(opt.as_ref().copied());
insta::assert_debug_snapshot!(opt.as_ref().copied(), @"None");
opt.set(30);
thread::sleep(ttl / 2);
insta::assert_debug_snapshot!(opt.as_ref().copied());
insta::assert_debug_snapshot!(opt.as_ref().copied(), @r###"
Some(
30,
)
"###);
thread::sleep(ttl);
insta::assert_debug_snapshot!(opt.as_ref().copied());
insta::assert_debug_snapshot!(opt.as_ref().copied(), @"None");
}
#[test]
fn test_take_replace() {
let ttl = Duration::from_millis(10);
let mut opt = TtlCell::new_with_value(ttl, 25);
thread::sleep(ttl / 2);
assert_eq!(opt.take(), Some(25));
assert_eq!(opt.as_ref().copied(), None);
insta::assert_debug_snapshot!(opt.take(), @r###"
Some(
25,
)
"###);
insta::assert_debug_snapshot!(opt.as_ref().copied(), @"None");
opt.set(30);
thread::sleep(ttl / 2);
assert_eq!(opt.replace(29), Some(30));
assert_eq!(opt.as_ref().copied(), Some(29));
insta::assert_debug_snapshot!(opt.replace(29), @r###"
Some(
30,
)
"###);
thread::sleep(ttl);
assert_eq!(opt.as_ref().copied(), None);
insta::assert_debug_snapshot!(opt.as_ref().copied(), @"None");
}
#[test]
fn test_take_with() {
let mut first = TtlCell::new_with_value(Duration::from_secs(1), 25);
thread::sleep(Duration::from_millis(10));
let mut second = TtlCell::new_with_value(Duration::from_secs(1), 25);
assert!(first
.take_with(&mut second, Duration::from_millis(100))
.is_some());
insta::assert_debug_snapshot!(first
.take_with(&mut second, Duration::from_millis(100)), @r###"
Some(
(
25,
25,
),
)
"###);
let mut first = TtlCell::new_with_value(Duration::from_secs(1), 25);
thread::sleep(Duration::from_millis(100));
let mut second = TtlCell::new_with_value(Duration::from_secs(1), 25);
assert!(first
.take_with(&mut second, Duration::from_millis(50))
.is_none());
insta::assert_debug_snapshot!(
first.take_with(&mut second, Duration::from_millis(50)), @"None");
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论