Skip to content

Commit bec8864

Browse files
zakcutnermarmeladema
authored andcommitted
Improve test coverage for dynamic searcher
1 parent ee84e3f commit bec8864

File tree

1 file changed

+25
-2
lines changed

1 file changed

+25
-2
lines changed

src/avx2/mod.rs

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,6 @@ macro_rules! avx2_searcher {
161161

162162
#[inline(always)]
163163
fn scalar_search_in(&self, haystack: &[u8]) -> bool {
164-
debug_assert!(self.size() > 0);
165164
debug_assert!(haystack.len() >= self.size());
166165

167166
let mut end = self.size() - 1;
@@ -219,7 +218,6 @@ macro_rules! avx2_searcher {
219218
hash: &VectorHash<V>,
220219
next: fn(&Self, &[u8]) -> bool,
221220
) -> bool {
222-
debug_assert!(self.size() > 0);
223221
debug_assert!(haystack.len() >= self.size());
224222

225223
let lanes = mem::size_of::<V>();
@@ -380,8 +378,25 @@ mod tests {
380378
result
381379
}
382380

381+
#[test]
382+
fn search_same() {
383+
assert!(search(b"foo", b"foo"));
384+
385+
assert!(search(
386+
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
387+
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit"
388+
));
389+
390+
assert!(search(
391+
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas commodo posuere orci a consectetur. Ut mattis turpis ut auctor consequat. Aliquam iaculis fringilla mi, nec aliquet purus",
392+
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas commodo posuere orci a consectetur. Ut mattis turpis ut auctor consequat. Aliquam iaculis fringilla mi, nec aliquet purus"
393+
));
394+
}
395+
383396
#[test]
384397
fn search_different() {
398+
assert!(!search(b"bar", b"foo"));
399+
385400
assert!(!search(
386401
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
387402
b"foo"
@@ -400,6 +415,8 @@ mod tests {
400415

401416
#[test]
402417
fn search_prefix() {
418+
assert!(search(b"foobar", b"foo"));
419+
403420
assert!(search(
404421
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
405422
b"Lorem"
@@ -418,6 +435,8 @@ mod tests {
418435

419436
#[test]
420437
fn search_suffix() {
438+
assert!(search(b"foobar", b"bar"));
439+
421440
assert!(search(
422441
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
423442
b"elit"
@@ -436,6 +455,8 @@ mod tests {
436455

437456
#[test]
438457
fn search_mutiple() {
458+
assert!(search(b"foobarfoo", b"foo"));
459+
439460
assert!(search(
440461
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
441462
b"it"
@@ -449,6 +470,8 @@ mod tests {
449470

450471
#[test]
451472
fn search_middle() {
473+
assert!(search(b"foobarfoo", b"bar"));
474+
452475
assert!(search(
453476
b"Lorem ipsum dolor sit amet, consectetur adipiscing elit",
454477
b"consectetur"

0 commit comments

Comments
 (0)