Пример #1
0
 public FakeQueryPart(params int[] matchedItems)
 {
     this.results = new IntermediateQueryResult(
         matchedItems.Select(
             m => new ScoredToken(
                 m,
                 new[] { ScoredFieldMatch(m, (byte)m, m) })));
 }
Пример #2
0
        public void ShouldApplyQueryContextToResults()
        {
            var part      = new StartsWithWordQueryPart("test");
            var navigator = FakeIndexNavigator.ReturningExactMatches(1, 2);

            var contextResults = new IntermediateQueryResult();
            var queryContext   = new Mock <IQueryContext>();

            queryContext.Setup(c => c.ApplyTo(It.IsAny <IntermediateQueryResult>())).Returns(contextResults);
            var result = part.Evaluate(() => new FakeIndexNavigator(), queryContext.Object);

            result.Should().Be(contextResults);
        }
Пример #3
0
        /// <inheritdoc />
        public IntermediateQueryResult ApplyTo(IntermediateQueryResult intermediateQueryResult)
        {
            if (this.filterToFieldId == null)
            {
                return(intermediateQueryResult);
            }

            return(new IntermediateQueryResult(
                       intermediateQueryResult.Matches
                       .Select(m => new ScoredToken(
                                   m.ItemId,
                                   m.FieldMatches.Where(fm => fm.FieldId == this.filterToFieldId).ToList()))
                       .Where(m => m.FieldMatches.Count > 0)));
        }
Пример #4
0
 public FakeQueryPart(params int[] matchedItems)
 {
     this.results = new IntermediateQueryResult(
         matchedItems.Select(
             m => new QueryWordMatch(m, new[] { FieldMatch((byte)m, m) })));
 }
Пример #5
0
 public FakeQueryPart(params QueryWordMatch[] matches)
 {
     this.results = new IntermediateQueryResult(matches);
 }
Пример #6
0
 public FakeQueryPart(params ScoredToken[] matches)
 {
     this.results = new IntermediateQueryResult(matches);
 }