handle * in single-field search

This commit is contained in:
Damien Elmes 2020-03-21 07:56:32 +10:00
parent 949252d438
commit 124357bd82

View file

@ -293,7 +293,7 @@ impl SqlWriter<'_, '_> {
return Ok(()); return Ok(());
} }
self.args.push(val.to_string()); self.args.push(val.replace('*', "%"));
let arg_idx = self.args.len(); let arg_idx = self.args.len();
let searches: Vec<_> = field_map let searches: Vec<_> = field_map
.iter() .iter()
@ -413,7 +413,7 @@ mod test {
// qualified search // qualified search
assert_eq!( assert_eq!(
s(ctx, "front:test"), s(ctx, "front:te*st"),
( (
concat!( concat!(
"(((n.mid = 1581236385344 and field_at_index(n.flds, 0) like ?1) or ", "(((n.mid = 1581236385344 and field_at_index(n.flds, 0) like ?1) or ",
@ -422,7 +422,7 @@ mod test {
"(n.mid = 1581236385347 and field_at_index(n.flds, 0) like ?1)))" "(n.mid = 1581236385347 and field_at_index(n.flds, 0) like ?1)))"
) )
.into(), .into(),
vec!["test".into()] vec!["te%st".into()]
) )
); );