You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2013/01/05 23:44:18 UTC
svn commit: r1429410 -
/lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java
Author: uschindler
Date: Sat Jan 5 22:44:18 2013
New Revision: 1429410
URL: http://svn.apache.org/viewvc?rev=1429410&view=rev
Log:
SOLR-4275: Add test
Modified:
lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java
Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java?rev=1429410&r1=1429409&r2=1429410&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/TestTrie.java Sat Jan 5 22:44:18 2013
@@ -16,6 +16,7 @@
*/
package org.apache.solr;
+import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.solr.request.SolrQueryRequest;
import org.apache.solr.schema.DateField;
import org.apache.solr.schema.FieldType;
@@ -47,6 +48,38 @@ public class TestTrie extends SolrTestCa
clearIndex();
super.tearDown();
}
+
+ @Test
+ public void testTokenizer() throws Exception {
+ FieldType type = h.getCore().getSchema().getFieldType("tint");
+ assertTrue(type instanceof TrieField);
+
+ String value = String.valueOf(random().nextInt());
+ TokenStream ts = type.getAnalyzer().tokenStream("dummy", new StringReader(value));
+ OffsetAttribute ofsAtt = ts.addAttribute(OffsetAttribute.class);
+ ts.reset();
+ int count = 0;
+ while (ts.incrementToken()) {
+ count++;
+ assertEquals(0, ofsAtt.startOffset());
+ assertEquals(value.length(), ofsAtt.endOffset());
+ }
+ final int precStep = ((TrieType) type).getPrecisionStep();
+ assertEquals( (32 + precStep - 1) / precStep, count);
+ ts.end();
+ assertEquals(value.length(), ofsAtt.startOffset());
+ assertEquals(value.length(), ofsAtt.endOffset());
+ ts.close();
+
+ // Test empty one:
+ ts = type.getAnalyzer().tokenStream("dummy", new StringReader(""));
+ ts.reset();
+ assertFalse(ts.incrementToken());
+ ts.end();
+ assertEquals(0, ofsAtt.startOffset());
+ assertEquals(0, ofsAtt.endOffset());
+ ts.close();
+ }
@Test
public void testTrieIntRangeSearch() throws Exception {