You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2011/11/17 09:55:10 UTC
svn commit: r1203114 - in /lucene/dev/trunk/solr: CHANGES.txt
solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java
solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java
Author: simonw
Date: Thu Nov 17 08:55:10 2011
New Revision: 1203114
URL: http://svn.apache.org/viewvc?rev=1203114&view=rev
Log:
SOLR-2902: List of collations are wrong parsed in SpellCheckResponse
Modified:
lucene/dev/trunk/solr/CHANGES.txt
lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java
lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java
Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1203114&r1=1203113&r2=1203114&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Thu Nov 17 08:55:10 2011
@@ -434,6 +434,10 @@ Bug Fixes
* SOLR-2813: Fix HTTP error codes returned when requests contain strings that
can not be parsed as numbers for Trie fields. (Jeff Crump and hossman)
+
+* SOLR-2902: List of collations are wrong parsed in SpellCheckResponse causing
+ a wrong number of collation results in the response.
+ (Bastiaan Verhoef, James Dyer via Simon Willnauer)
Other Changes
----------------------
Modified: lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java?rev=1203114&r1=1203113&r2=1203114&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java (original)
+++ lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/response/SpellCheckResponse.java Thu Nov 17 08:55:10 2011
@@ -53,7 +53,7 @@ public class SpellCheckResponse {
for (Object o : collationInfo) {
if (o instanceof String) {
collations.add(new Collation()
- .setCollationQueryString((String) sugg.getVal(i)));
+ .setCollationQueryString((String) o));
} else if (o instanceof NamedList) {
@SuppressWarnings("unchecked")
NamedList<Object> expandedCollation = (NamedList<Object>) o;
Modified: lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java?rev=1203114&r1=1203113&r2=1203114&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java (original)
+++ lucene/dev/trunk/solr/solrj/src/test/org/apache/solr/client/solrj/response/TestSpellCheckResponse.java Thu Nov 17 08:55:10 2011
@@ -150,7 +150,7 @@ public class TestSpellCheckResponse exte
assertTrue("name:(+faith +hope +love)".equals(response.getCollatedResult()) || "name:(+faith +hope +loaves)".equals(response.getCollatedResult()));
List<Collation> collations = response.getCollatedResults();
- assertTrue(collations.size()==2);
+ assertEquals(2, collations.size());
for(Collation collation : collations)
{
assertTrue("name:(+faith +hope +love)".equals(collation.getCollationQueryString()) || "name:(+faith +hope +loaves)".equals(collation.getCollationQueryString()));
@@ -174,7 +174,20 @@ public class TestSpellCheckResponse exte
fail("Original Word Should have been either fauth, home or loane.");
}
}
-
+ }
+
+ query.set(SpellingParams.SPELLCHECK_COLLATE_EXTENDED_RESULTS, false);
+ response = request.process(server).getSpellCheckResponse();
+ {
+ collations = response.getCollatedResults();
+ assertEquals(2, collations.size());
+ String collation1 = collations.get(0).getCollationQueryString();
+ String collation2 = collations.get(1).getCollationQueryString();
+ assertFalse(collation1 + " equals " + collation2,
+ collation1.equals(collation2));
+ for(Collation collation : collations) {
+ assertTrue("name:(+faith +hope +love)".equals(collation.getCollationQueryString()) || "name:(+faith +hope +loaves)".equals(collation.getCollationQueryString()));
+ }
}
}