Skip to content

Commit 6e53004

Browse files
committed
Use Iterator::eq in tests
This fixes false negatives when the iterators are different lengths.
1 parent b61677d commit 6e53004

File tree

1 file changed

+9
-25
lines changed

1 file changed

+9
-25
lines changed

src/test.rs

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -30,40 +30,24 @@ fn test_graphemes() {
3030
&["\u{600}", "\u{20}", "\u{20}"]),
3131
];
3232

33-
for &(s, g) in TEST_SAME {
33+
for &(s, g) in TEST_SAME.iter() {
3434
// test forward iterator
35-
assert!(UnicodeSegmentation::graphemes(s, true)
36-
.zip(g.iter().cloned())
37-
.all(|(a,b)| a == b));
38-
assert!(UnicodeSegmentation::graphemes(s, false)
39-
.zip(g.iter().cloned())
40-
.all(|(a,b)| a == b));
35+
assert!(UnicodeSegmentation::graphemes(s, true).eq(g.iter().cloned()));
36+
assert!(UnicodeSegmentation::graphemes(s, false).eq(g.iter().cloned()));
4137

4238
// test reverse iterator
43-
assert!(UnicodeSegmentation::graphemes(s, true).rev()
44-
.zip(g.iter().rev().cloned())
45-
.all(|(a,b)| a == b));
46-
assert!(UnicodeSegmentation::graphemes(s, false).rev()
47-
.zip(g.iter().rev().cloned())
48-
.all(|(a,b)| a == b));
39+
assert!(UnicodeSegmentation::graphemes(s, true).rev().eq(g.iter().rev().cloned()));
40+
assert!(UnicodeSegmentation::graphemes(s, false).rev().eq(g.iter().rev().cloned()));
4941
}
5042

5143
for &(s, gt, gf) in TEST_DIFF.iter().chain(EXTRA_DIFF) {
5244
// test forward iterator
53-
assert!(UnicodeSegmentation::graphemes(s, true)
54-
.zip(gt.iter().cloned())
55-
.all(|(a,b)| a == b), "{:?}", s);
56-
assert!(UnicodeSegmentation::graphemes(s, false)
57-
.zip(gf.iter().cloned())
58-
.all(|(a,b)| a == b));
45+
assert!(UnicodeSegmentation::graphemes(s, true).eq(gt.iter().cloned()));
46+
assert!(UnicodeSegmentation::graphemes(s, false).eq(gf.iter().cloned()));
5947

6048
// test reverse iterator
61-
assert!(UnicodeSegmentation::graphemes(s, true).rev()
62-
.zip(gt.iter().rev().cloned())
63-
.all(|(a,b)| a == b));
64-
assert!(UnicodeSegmentation::graphemes(s, false).rev()
65-
.zip(gf.iter().rev().cloned())
66-
.all(|(a,b)| a == b));
49+
assert!(UnicodeSegmentation::graphemes(s, true).rev().eq(gt.iter().rev().cloned()));
50+
assert!(UnicodeSegmentation::graphemes(s, false).rev().eq(gf.iter().rev().cloned()));
6751
}
6852

6953
// test the indices iterators

0 commit comments

Comments
 (0)