You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ro...@apache.org on 2014/12/14 22:27:50 UTC

svn commit: r1645525 - in /lucene/dev/branches/lucene2878/lucene/core/src: java/org/apache/lucene/search/ java/org/apache/lucene/search/posfilter/ test/org/apache/lucene/search/

Author: romseygeek
Date: Sun Dec 14 21:27:50 2014
New Revision: 1645525

URL: http://svn.apache.org/r1645525
Log:
LUCENE-2878: Scoring on positionfilterqueries

Removed:
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseScorer.java
Modified:
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/ExactPhraseScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Scorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SloppyPhraseScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/BlockPhraseScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/NonOverlappingQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/OrderedNearQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilterQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilteredScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/RangeFilterQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/UnorderedNearQuery.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/WithinFilteredScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestSloppyPhraseQuery.java

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/ExactPhraseScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/ExactPhraseScorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/ExactPhraseScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/ExactPhraseScorer.java Sun Dec 14 21:27:50 2014
@@ -23,8 +23,9 @@ import java.util.Arrays;
 import org.apache.lucene.index.DocsEnum;
 import org.apache.lucene.search.PhraseQuery.TermDocsEnumFactory;
 import org.apache.lucene.search.similarities.Similarity;
+import org.apache.lucene.util.BytesRef;
 
-final class ExactPhraseScorer extends PhraseScorer {
+final class ExactPhraseScorer extends Scorer {
   private final int endMinus1;
   
   private final static int CHUNK = 4096;
@@ -129,7 +130,18 @@ final class ExactPhraseScorer extends Ph
   
   @Override
   public float score() throws IOException {
-    return docScorer.score(docID, freq());
+    return docScorer.score(docID, phraseFreq());
+  }
+
+  private int freq = -1;
+
+  protected int phraseFreq() throws IOException {
+    if (freq != -1)
+      return freq;
+    freq = 0;
+    while (nextPosition() != NO_MORE_POSITIONS)
+      freq++;
+    return freq;
   }
 
   private int chunkStart = 0;
@@ -140,11 +152,11 @@ final class ExactPhraseScorer extends Ph
   private boolean cached = false;
 
   private void resetPositions() throws IOException {
-    freq = -1;
     chunkStart = 0;
     chunkEnd = CHUNK;
     posRemaining = 0;
     cached = false;
+    freq = -1;
     for (final ChunkState cs : chunkStates) {
       cs.posLimit = cs.posEnum.freq();
       cs.pos = cs.offset + cs.posEnum.nextPosition();
@@ -155,33 +167,43 @@ final class ExactPhraseScorer extends Ph
 
   private int firstPosition() throws IOException {
     resetPositions();
-    int pos = doNextPosition();
+    int pos = nextPosition();
     cached = true;
     return pos;
   }
 
   @Override
-  protected int doStartPosition() throws IOException {
+  public int startPosition() throws IOException {
     return posQueue[positionsInChunk - posRemaining - 1];
   }
 
   @Override
-  protected int doStartOffset() throws IOException {
+  public int startOffset() throws IOException {
     return offsetQueue[(positionsInChunk - posRemaining - 1) / 2];
   }
 
   @Override
-  protected int doEndOffset() throws IOException {
+  public int endOffset() throws IOException {
     return offsetQueue[(positionsInChunk - posRemaining - 1) / 2 + 1];
   }
 
   @Override
-  protected int doEndPosition() throws IOException {
+  public BytesRef getPayload() throws IOException {
+    return null;  // TODO payloads over intervals
+  }
+
+  @Override
+  public int endPosition() throws IOException {
     return startPosition() + chunkStates.length - 1;
   }
 
   @Override
-  protected int doNextPosition() throws IOException {
+  public int freq() throws IOException {
+    return phraseFreq();
+  }
+
+  @Override
+  public int nextPosition() throws IOException {
     if (cached) {
       cached = false;
       return startPosition();

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/PhraseQuery.java Sun Dec 14 21:27:50 2014
@@ -17,6 +17,11 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Set;
+
 import org.apache.lucene.index.DocsEnum;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReaderContext;
@@ -34,11 +39,6 @@ import org.apache.lucene.util.Bits;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.ToStringUtils;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Set;
-
 /** A Query that matches documents containing a particular sequence of terms.
  * A PhraseQuery is built by QueryParser for input like <code>"new york"</code>.
  * 
@@ -305,7 +305,7 @@ public class PhraseQuery extends Query {
       if (scorer != null) {
         int newDoc = scorer.advance(doc);
         if (newDoc == doc) {
-          float freq = slop == 0 ? scorer.freq() : ((SloppyPhraseScorer)scorer).sloppyFreq();
+          float freq = slop == 0 ? ((ExactPhraseScorer)scorer).phraseFreq() : ((SloppyPhraseScorer)scorer).sloppyFreq();
           SimScorer docScorer = similarity.simScorer(stats, context);
           ComplexExplanation result = new ComplexExplanation();
           result.setDescription("weight("+getQuery()+" in "+doc+") [" + similarity.getClass().getSimpleName() + "], result of:");

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Scorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Scorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Scorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Scorer.java Sun Dec 14 21:27:50 2014
@@ -17,12 +17,12 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.DocsEnum;
-
 import java.io.IOException;
 import java.util.Collection;
 import java.util.Collections;
 
+import org.apache.lucene.index.DocsEnum;
+
 /**
  * Expert: Common scoring functionality for different types of queries.
  *
@@ -60,6 +60,13 @@ public abstract class Scorer extends Doc
    * {@link LeafCollector#collect}.
    */
   public abstract float score() throws IOException;
+
+  /** Returns the score of the current interval spanned by this scorer.
+   * Initially invalid, until {@link #nextPosition()} is called
+   */
+  public float intervalScore() throws IOException {
+    return 1;
+  }
   
   /** returns parent Weight
    * @lucene.experimental

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SloppyPhraseScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SloppyPhraseScorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SloppyPhraseScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SloppyPhraseScorer.java Sun Dec 14 21:27:50 2014
@@ -27,10 +27,11 @@ import java.util.LinkedHashMap;
 
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.similarities.Similarity;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.FixedBitSet;
 
 
-final class SloppyPhraseScorer extends PhraseScorer {
+final class SloppyPhraseScorer extends Scorer {
   private PhrasePositions min, max;
 
   private float sloppyFreq;
@@ -92,10 +93,14 @@ final class SloppyPhraseScorer extends P
   private int matchLength;
   private int startpos = -1;
   private int startoffset = -1;
-  private int endoffset = -1;
 
   @Override
-  protected int doNextPosition() throws IOException {
+  public int freq() throws IOException {
+    throw new UnsupportedOperationException();
+  }
+
+  @Override
+  public int nextPosition() throws IOException {
     if (cached) {
       cached = false;
       return this.startPosition();
@@ -169,10 +174,9 @@ final class SloppyPhraseScorer extends P
     if (!initPhrasePositions())
       return NO_MORE_POSITIONS;
 
-    freq = -1;
     sloppyFreq = -1;
     cached = false;
-    int pos = doNextPosition();
+    int pos = nextPosition();
     cached = true;
     return pos;
   }
@@ -604,23 +608,27 @@ final class SloppyPhraseScorer extends P
   }
 
   @Override
-  protected int doStartOffset() throws IOException {
+  public int startOffset() throws IOException {
     return startoffset;
   }
 
   @Override
-  protected int doEndOffset() throws IOException {
+  public int endOffset() throws IOException {
     return spanOffsetEnd;
   }
 
-  // TODO : getPayload on spans?
   @Override
-  protected int doStartPosition() throws IOException {
+  public BytesRef getPayload() throws IOException {
+    return null;    // TODO : getPayload on intervals?
+  }
+
+  @Override
+  public int startPosition() throws IOException {
     return startpos;
   }
 
   @Override
-  protected int doEndPosition() throws IOException {
+  public int endPosition() throws IOException {
     return spanEnd;
   }
 

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/BlockPhraseScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/BlockPhraseScorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/BlockPhraseScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/BlockPhraseScorer.java Sun Dec 14 21:27:50 2014
@@ -1,10 +1,10 @@
 package org.apache.lucene.search.posfilter;
 
+import java.io.IOException;
+
 import org.apache.lucene.search.Scorer;
 import org.apache.lucene.search.similarities.Similarity;
 
-import java.io.IOException;
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/NonOverlappingQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/NonOverlappingQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/NonOverlappingQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/NonOverlappingQuery.java Sun Dec 14 21:27:50 2014
@@ -158,6 +158,11 @@ public final class NonOverlappingQuery e
     }
 
     @Override
+    public float intervalScore() throws IOException {
+      return child.intervalScore();
+    }
+
+    @Override
     protected int doNextPosition() throws IOException {
       if (subtPosition == NO_MORE_POSITIONS) {
         int pos = child.nextPosition();

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/OrderedNearQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/OrderedNearQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/OrderedNearQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/OrderedNearQuery.java Sun Dec 14 21:27:50 2014
@@ -85,7 +85,7 @@ public class OrderedNearQuery extends Po
 
     @Override
     public int freq() throws IOException {
-      return 1; // nocommit
+      throw new UnsupportedOperationException();
     }
 
     @Override

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilterQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilterQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilterQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilterQuery.java Sun Dec 14 21:27:50 2014
@@ -17,6 +17,10 @@ package org.apache.lucene.search.posfilt
  * limitations under the License.
  */
 
+import java.io.IOException;
+import java.util.Set;
+import java.util.TreeSet;
+
 import org.apache.lucene.index.DocsEnum;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.LeafReaderContext;
@@ -34,10 +38,6 @@ import org.apache.lucene.search.Weight;
 import org.apache.lucene.search.similarities.Similarity;
 import org.apache.lucene.util.Bits;
 
-import java.io.IOException;
-import java.util.Set;
-import java.util.TreeSet;
-
 public class PositionFilterQuery extends Query {
 
   protected final Query innerQuery;
@@ -115,7 +115,7 @@ public class PositionFilterQuery extends
       if (scorer != null) {
         int newDoc = scorer.advance(doc);
         if (newDoc == doc) {
-          float freq = scorer.freq();
+          float freq = ((PositionFilteredScorer)scorer).intervalFreq();
           Similarity.SimScorer docScorer = similarity.simScorer(stats, context);
           ComplexExplanation result = new ComplexExplanation();
           result.setDescription("weight("+getQuery()+" in "+doc+") [" + similarity.getClass().getSimpleName() + "], result of:");

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilteredScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilteredScorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilteredScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/PositionFilteredScorer.java Sun Dec 14 21:27:50 2014
@@ -46,7 +46,18 @@ public abstract class PositionFilteredSc
 
   @Override
   public float score() throws IOException {
-    return this.simScorer.score(docID(), freq());
+    return this.simScorer.score(docID(), intervalFreq());
+  }
+
+  private float freq = -1;
+
+  protected final float intervalFreq() throws IOException {
+    if (freq != -1)
+      return freq;
+    freq = 0;
+    while (nextPosition() != NO_MORE_POSITIONS)
+      freq += intervalScore();
+    return freq;
   }
 
   @Override
@@ -56,11 +67,7 @@ public abstract class PositionFilteredSc
 
   @Override
   public int freq() throws IOException {
-    int freq = 0;
-    while (nextPosition() != NO_MORE_POSITIONS) {
-      freq++;
-    }
-    return freq;
+    throw new UnsupportedOperationException();
   }
 
   @Override
@@ -104,6 +111,7 @@ public abstract class PositionFilteredSc
 
   protected void reset(int doc) throws IOException {
     buffered = false;
+    freq = -1;
   };
 
   public int getMatchDistance() {

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/RangeFilterQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/RangeFilterQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/RangeFilterQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/RangeFilterQuery.java Sun Dec 14 21:27:50 2014
@@ -1,20 +1,15 @@
 package org.apache.lucene.search.posfilter;
 
-import org.apache.lucene.search.Query;
-import org.apache.lucene.search.Scorer;
-import org.apache.lucene.search.similarities.Similarity;
-
-import java.io.IOException;
-
-/**
- * Copyright (c) 2012 Lemur Consulting Ltd.
- * <p/>
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * <p/>
- * http://www.apache.org/licenses/LICENSE-2.0
- * <p/>
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -22,6 +17,12 @@ import java.io.IOException;
  * limitations under the License.
  */
 
+import java.io.IOException;
+
+import org.apache.lucene.search.Query;
+import org.apache.lucene.search.Scorer;
+import org.apache.lucene.search.similarities.Similarity;
+
 public class RangeFilterQuery extends PositionFilterQuery {
 
   public RangeFilterQuery(int start, int end, Query innerQuery) {
@@ -65,6 +66,11 @@ public class RangeFilterQuery extends Po
     }
 
     @Override
+    public float intervalScore() throws IOException {
+      return child.intervalScore();
+    }
+
+    @Override
     protected int doNextPosition() throws IOException {
       int position;
       while ((position = child.nextPosition()) != NO_MORE_POSITIONS) {

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/UnorderedNearQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/UnorderedNearQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/UnorderedNearQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/UnorderedNearQuery.java Sun Dec 14 21:27:50 2014
@@ -102,6 +102,10 @@ public class UnorderedNearQuery extends
       posQueue.advanceTo(doc);
     }
 
+    @Override
+    public float intervalScore() throws IOException {
+      return simScorer.computeSlopFactor(matchDistance);
+    }
 
     private class SpanningPositionQueue extends PositionQueue {
 
@@ -176,18 +180,6 @@ public class UnorderedNearQuery extends
 
     }
 
-    @Override
-    public float score() throws IOException {
-      return this.simScorer.score(docID(), sloppyFreq());
-    }
-
-    private float sloppyFreq() throws IOException {
-      float f = 0.0f;
-      while (nextPosition() != NO_MORE_POSITIONS) {
-        f += this.simScorer.computeSlopFactor(matchDistance);
-      }
-      return f;
-    }
   }
 
 }

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/WithinFilteredScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/WithinFilteredScorer.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/WithinFilteredScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/posfilter/WithinFilteredScorer.java Sun Dec 14 21:27:50 2014
@@ -17,10 +17,10 @@ package org.apache.lucene.search.posfilt
  * limitations under the License.
  */
 
-import org.apache.lucene.search.similarities.Similarity;
-
 import java.io.IOException;
 
+import org.apache.lucene.search.similarities.Similarity;
+
 public class WithinFilteredScorer extends PositionFilteredScorer {
 
   private final int slop;
@@ -33,6 +33,11 @@ public class WithinFilteredScorer extend
   }
 
   @Override
+  public float intervalScore() throws IOException {
+    return wrappedScorer.intervalScore();
+  }
+
+  @Override
   protected int doNextPosition() throws IOException {
     int position;
     while ((position = wrappedScorer.nextPosition()) != NO_MORE_POSITIONS) {

Modified: lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestSloppyPhraseQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestSloppyPhraseQuery.java?rev=1645525&r1=1645524&r2=1645525&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestSloppyPhraseQuery.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestSloppyPhraseQuery.java Sun Dec 14 21:27:50 2014
@@ -146,7 +146,7 @@ public class TestSloppyPhraseQuery exten
     IndexReader reader = writer.getReader();
 
     IndexSearcher searcher = newSearcher(reader);
-    MaxFreqCollector c = new MaxFreqCollector();
+    MaxScoreCollector c = new MaxScoreCollector();
     searcher.search(query, c);
     assertEquals("slop: "+slop+"  query: "+query+"  doc: "+doc+"  Wrong number of hits", expectedNumResults, c.totalHits);
 
@@ -178,7 +178,7 @@ public class TestSloppyPhraseQuery exten
     return query;
   }
 
-  static class MaxFreqCollector extends SimpleCollector {
+  static class MaxScoreCollector extends SimpleCollector {
     float max;
     int totalHits;
     Scorer scorer;
@@ -191,7 +191,7 @@ public class TestSloppyPhraseQuery exten
     @Override
     public void collect(int doc) throws IOException {
       totalHits++;
-      max = Math.max(max, scorer.freq());
+      max = Math.max(max, scorer.score());
     }
 
     @Override
@@ -212,7 +212,6 @@ public class TestSloppyPhraseQuery exten
       
       @Override
       public void collect(int doc) throws IOException {
-        assertFalse(Float.isInfinite(scorer.freq()));
         assertFalse(Float.isInfinite(scorer.score()));
       }