Skip to content

Commit 3b0569a

Browse files
committed
Add tests for From<Vec<_>> and From<[_]>.
1 parent 71a9b29 commit 3b0569a

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

lib.rs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1566,6 +1566,31 @@ pub mod tests {
15661566
fn test_from() {
15671567
assert_eq!(&SmallVec::<[u32; 2]>::from(&[1][..])[..], [1]);
15681568
assert_eq!(&SmallVec::<[u32; 2]>::from(&[1, 2, 3][..])[..], [1, 2, 3]);
1569+
1570+
let vec = vec![];
1571+
let small_vec: SmallVec<[u8; 3]> = SmallVec::from(vec);
1572+
assert_eq!(&*small_vec, &[]);
1573+
drop(small_vec);
1574+
1575+
let vec = vec![1, 2, 3, 4, 5];
1576+
let small_vec: SmallVec<[u8; 3]> = SmallVec::from(vec);
1577+
assert_eq!(&*small_vec, &[1, 2, 3, 4, 5]);
1578+
drop(small_vec);
1579+
1580+
let vec = vec![1, 2, 3, 4, 5];
1581+
let small_vec: SmallVec<[u8; 1]> = SmallVec::from(vec);
1582+
assert_eq!(&*small_vec, &[1, 2, 3, 4, 5]);
1583+
drop(small_vec);
1584+
1585+
let array = [1];
1586+
let small_vec: SmallVec<[u8; 1]> = SmallVec::from(array);
1587+
assert_eq!(&*small_vec, &[1]);
1588+
drop(small_vec);
1589+
1590+
let array = [99; 128];
1591+
let small_vec: SmallVec<[u8; 128]> = SmallVec::from(array);
1592+
assert_eq!(&*small_vec, vec![99u8; 128].as_slice());
1593+
drop(small_vec);
15691594
}
15701595

15711596
#[test]

0 commit comments

Comments
 (0)