Skip to content

Commit 60893d3

Browse files
committed
Require Debug and use assert_eq for improved test failure messages
1 parent badef35 commit 60893d3

File tree

1 file changed

+15
-14
lines changed

1 file changed

+15
-14
lines changed

tests/tests.rs

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
extern crate abomonation;
22

33
use abomonation::*;
4+
use std::fmt::Debug;
45

56
#[test] fn test_array() { _test_pass(vec![[0, 1, 2]; 1024]); }
67
#[test] fn test_nonzero() { _test_pass(vec![[std::num::NonZeroI32::new(1)]; 1024]); }
@@ -38,21 +39,21 @@ fn test_phantom_data_for_non_abomonatable_type() {
3839
_test_pass(PhantomData::<NotAbomonatable>::default());
3940
}
4041

41-
fn _test_pass<T: Abomonation+Eq>(record: T) {
42+
fn _test_pass<T: Abomonation+Debug+Eq>(record: T) {
4243
let mut bytes = Vec::new();
4344
unsafe { encode(&record, &mut bytes).unwrap(); }
4445
{
4546
let (result, rest) = unsafe { decode::<T>(&mut bytes[..]) }.unwrap();
46-
assert!(&record == result);
47-
assert!(rest.len() == 0);
47+
assert_eq!(&record, result);
48+
assert_eq!(rest.len(), 0);
4849
}
4950
}
5051

51-
fn _test_fail<T: Abomonation>(record: T) {
52+
fn _test_fail<T: Abomonation+Debug+Eq>(record: T) {
5253
let mut bytes = Vec::new();
5354
unsafe { encode(&record, &mut bytes).unwrap(); }
5455
bytes.pop();
55-
assert!(unsafe { decode::<T>(&mut bytes[..]) }.is_none());
56+
assert_eq!(unsafe { decode::<T>(&mut bytes[..]) }, None);
5657
}
5758

5859
fn _test_size<T: Abomonation>(record: T) {
@@ -62,7 +63,7 @@ fn _test_size<T: Abomonation>(record: T) {
6263
}
6364

6465

65-
#[derive(Eq, PartialEq)]
66+
#[derive(Debug, Eq, PartialEq)]
6667
struct MyStruct {
6768
a: String,
6869
b: u64,
@@ -82,8 +83,8 @@ fn test_macro() {
8283

8384
// decode a &Vec<(u64, String)> from binary data
8485
if let Some((result, rest)) = unsafe { decode::<MyStruct>(&mut bytes) } {
85-
assert!(result == &record);
86-
assert!(rest.len() == 0);
86+
assert_eq!(result, &record);
87+
assert_eq!(rest.len(), 0);
8788
}
8889
}
8990

@@ -106,10 +107,10 @@ fn test_multiple_encode_decode() {
106107
unsafe { encode(&vec![1,2,3], &mut bytes).unwrap(); }
107108
unsafe { encode(&"grawwwwrr".to_owned(), &mut bytes).unwrap(); }
108109

109-
let (t, r) = unsafe { decode::<u32>(&mut bytes) }.unwrap(); assert!(*t == 0);
110-
let (t, r) = unsafe { decode::<u64>(r) }.unwrap(); assert!(*t == 7);
111-
let (t, r) = unsafe { decode::<Vec<i32>>(r) }.unwrap(); assert!(*t == vec![1,2,3]);
112-
let (t, _r) = unsafe { decode::<String>(r) }.unwrap(); assert!(*t == "grawwwwrr".to_owned());
110+
let (t, r) = unsafe { decode::<u32>(&mut bytes) }.unwrap(); assert_eq!(*t, 0);
111+
let (t, r) = unsafe { decode::<u64>(r) }.unwrap(); assert_eq!(*t, 7);
112+
let (t, r) = unsafe { decode::<Vec<i32>>(r) }.unwrap(); assert_eq!(*t, vec![1,2,3]);
113+
let (t, _r) = unsafe { decode::<String>(r) }.unwrap(); assert_eq!(*t, "grawwwwrr".to_owned());
113114
}
114115

115116
#[test]
@@ -125,6 +126,6 @@ fn test_net_types() {
125126
unsafe { encode(&socket_addr4, &mut bytes).unwrap(); }
126127
unsafe { encode(&socket_addr6, &mut bytes).unwrap(); }
127128

128-
let (t, r) = unsafe { decode::<SocketAddr>(&mut bytes) }.unwrap(); assert!(*t == socket_addr4);
129-
let (t, _r) = unsafe { decode::<SocketAddr>(r) }.unwrap(); assert!(*t == socket_addr6);
129+
let (t, r) = unsafe { decode::<SocketAddr>(&mut bytes) }.unwrap(); assert_eq!(*t, socket_addr4);
130+
let (t, _r) = unsafe { decode::<SocketAddr>(r) }.unwrap(); assert_eq!(*t, socket_addr6);
130131
}

0 commit comments

Comments
 (0)