diff --git a/src/query/boolean_query/mod.rs b/src/query/boolean_query/mod.rs index f0d7b890b..83cb21a53 100644 --- a/src/query/boolean_query/mod.rs +++ b/src/query/boolean_query/mod.rs @@ -75,7 +75,25 @@ mod tests { assert!(scorer.is::()); } - /* + #[test] + pub fn test_boolean_termonly_intersection() { + let (index, text_field) = aux_test_helper(); + let query_parser = QueryParser::for_index(&index, vec![text_field]); + let searcher = index.searcher(); + { + let query = query_parser.parse_query("+a +b +c").unwrap(); + let weight = query.weight(&searcher, true).unwrap(); + let scorer = weight.scorer(searcher.segment_reader(0u32)).unwrap(); + assert!(scorer.is::>()); + } + { + let query = query_parser.parse_query("+a +(b c)").unwrap(); + let weight = query.weight(&searcher, true).unwrap(); + let scorer = weight.scorer(searcher.segment_reader(0u32)).unwrap(); + assert!(scorer.is::>>()); + } + } + #[test] pub fn test_boolean_reqopt() { let (index, text_field) = aux_test_helper(); @@ -85,18 +103,16 @@ mod tests { let query = query_parser.parse_query("+a b").unwrap(); let weight = query.weight(&searcher, true).unwrap(); let scorer = weight.scorer(searcher.segment_reader(0u32)).unwrap(); - assert!(Downcast::< - RequiredOptionalScorer, Box, SumWithCoordsCombiner>, - >::is_type(&*scorer)); + assert!(scorer.is::, Box, SumWithCoordsCombiner>>()); } { let query = query_parser.parse_query("+a b").unwrap(); let weight = query.weight(&searcher, false).unwrap(); let scorer = weight.scorer(searcher.segment_reader(0u32)).unwrap(); - assert!(Downcast::::is_type(&*scorer)); + assert!(scorer.is::()); } } - */ + #[test] pub fn test_boolean_query() {