use of org.apache.lucene.queries.intervals.IntervalsSource in project OpenSearch by opensearch-project.
the class IntervalBuilderTests method testUnorderedNoOverlap.
public void testUnorderedNoOverlap() throws IOException {
CannedTokenStream ts = new CannedTokenStream(new Token("term1", 1, 2), new Token("term2", 3, 4), new Token("term3", 5, 6));
IntervalsSource source = BUILDER.analyzeText(new CachingTokenFilter(ts), -1, IntervalMode.UNORDERED_NO_OVERLAP);
IntervalsSource expected = Intervals.unorderedNoOverlaps(Intervals.unorderedNoOverlaps(Intervals.term("term1"), Intervals.term("term2")), Intervals.term("term3"));
assertEquals(expected, source);
}
use of org.apache.lucene.queries.intervals.IntervalsSource in project OpenSearch by opensearch-project.
the class IntervalBuilderTests method testSimpleSynonyms.
public void testSimpleSynonyms() throws IOException {
CannedTokenStream ts = new CannedTokenStream(new Token("term1", 1, 2), new Token("term2", 3, 4), new Token("term4", 0, 3, 4), new Token("term3", 5, 6));
IntervalsSource source = BUILDER.analyzeText(new CachingTokenFilter(ts), -1, true);
IntervalsSource expected = Intervals.ordered(Intervals.term("term1"), Intervals.or(Intervals.term("term2"), Intervals.term("term4")), Intervals.term("term3"));
assertEquals(expected, source);
}
use of org.apache.lucene.queries.intervals.IntervalsSource in project OpenSearch by opensearch-project.
the class IntervalBuilderTests method testGraphTerminatesOnGap.
public void testGraphTerminatesOnGap() throws IOException {
// term1 term2:2/term3 term4 [] term5
CannedTokenStream ts = new CannedTokenStream(new Token("term1", 1, 2), new Token("term2", 1, 2, 3, 2), new Token("term3", 0, 2, 3), new Token("term4", 2, 3), new Token("term5", 2, 6, 7));
IntervalsSource source = BUILDER.analyzeText(new CachingTokenFilter(ts), -1, true);
IntervalsSource expected = Intervals.ordered(Intervals.term("term1"), Intervals.or(Intervals.term("term2"), Intervals.phrase("term3", "term4")), Intervals.extend(Intervals.term("term5"), 1, 0));
assertEquals(expected, source);
}
use of org.apache.lucene.queries.intervals.IntervalsSource in project OpenSearch by opensearch-project.
the class IntervalBuilderTests method testPhraseWithStopword.
public void testPhraseWithStopword() throws IOException {
CannedTokenStream ts = new CannedTokenStream(new Token("term1", 1, 1, 2), new Token("term3", 2, 5, 6));
IntervalsSource source = BUILDER.analyzeText(new CachingTokenFilter(ts), 0, true);
IntervalsSource expected = Intervals.phrase(Intervals.term("term1"), Intervals.extend(Intervals.term("term3"), 1, 0));
assertEquals(expected, source);
}
use of org.apache.lucene.queries.intervals.IntervalsSource in project OpenSearch by opensearch-project.
the class IntervalBuilderTests method testGraphSynonymsWithGaps.
public void testGraphSynonymsWithGaps() throws IOException {
// term1 [] term2:4/term3 [] [] term4 term5
CannedTokenStream ts = new CannedTokenStream(new Token("term1", 1, 2), new Token("term2", 2, 3, 4, 4), new Token("term3", 0, 3, 4), new Token("term4", 3, 5, 6), new Token("term5", 6, 7));
IntervalsSource source = BUILDER.analyzeText(new CachingTokenFilter(ts), -1, true);
IntervalsSource expected = Intervals.ordered(Intervals.term("term1"), Intervals.or(Intervals.extend(Intervals.term("term2"), 1, 0), Intervals.phrase(Intervals.extend(Intervals.term("term3"), 1, 0), Intervals.extend(Intervals.term("term4"), 2, 0))), Intervals.term("term5"));
assertEquals(expected, source);
}
Aggregations