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()));  
+      }      
     }
     
   }