Index: contrib/analyzers/src/test/org/apache/lucene/analysis/ngram/NGramTokenFilterTest.java =================================================================== --- contrib/analyzers/src/test/org/apache/lucene/analysis/ngram/NGramTokenFilterTest.java (revision 637499) +++ contrib/analyzers/src/test/org/apache/lucene/analysis/ngram/NGramTokenFilterTest.java (working copy) @@ -17,10 +17,23 @@ * limitations under the License. */ +import org.apache.lucene.document.Document; +import org.apache.lucene.document.Field; +import org.apache.lucene.store.RAMDirectory; +import org.apache.lucene.index.IndexReader; +import org.apache.lucene.index.IndexWriter; +import org.apache.lucene.index.Term; +import org.apache.lucene.index.TermPositions; +import org.apache.lucene.search.IndexSearcher; +import org.apache.lucene.search.Query; +import org.apache.lucene.search.Hits; import org.apache.lucene.analysis.Token; +import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.analysis.WhitespaceTokenizer; +import org.apache.lucene.queryParser.QueryParser; +import java.io.Reader; import java.io.StringReader; import java.util.ArrayList; @@ -35,7 +48,7 @@ private ArrayList tokens = new ArrayList(); public void setUp() { - input = new WhitespaceTokenizer(new StringReader("abcde")); + input = new WhitespaceTokenizer(new StringReader("abcde abcde")); } public void testInvalidInput() throws Exception { @@ -61,63 +74,78 @@ public void testUnigrams() throws Exception { NGramTokenFilter filter = new NGramTokenFilter(input, 1, 1); + // ArrayList tokens=new ArrayList(); + ArrayList tokens = new ArrayList(); Token token = null; do { token = filter.next(); if (token != null) { - tokens.add(token.toString()); -// System.out.println(token.termText()); -// System.out.println(token); -// Thread.sleep(1000); + tokens.add(token); } } while (token != null); - assertEquals(5, tokens.size()); - ArrayList exp = new ArrayList(); - exp.add("(a,0,1)"); exp.add("(b,1,2)"); exp.add("(c,2,3)"); exp.add("(d,3,4)"); exp.add("(e,4,5)"); - assertEquals(exp, tokens); + assertEquals(10, tokens.size()); + String[] texts=new String[]{"a","b","c","d","e","a","b","c","d","e"}; + int[] starts=new int[]{0,0,0,0,0,6,6,6,6,6}; + int[] ends =new int[]{5,5,5,5,5,11,11,11,11,11}; + for(int i=0;i tokens=new ArrayList(); + ArrayList tokens = new ArrayList(); Token token = null; do { token = filter.next(); if (token != null) { - tokens.add(token.toString()); -// System.out.println(token.termText()); -// System.out.println(token); -// Thread.sleep(1000); + tokens.add(token); } } while (token != null); - assertEquals(4, tokens.size()); - ArrayList exp = new ArrayList(); - exp.add("(ab,0,2)"); exp.add("(bc,1,3)"); exp.add("(cd,2,4)"); exp.add("(de,3,5)"); - assertEquals(exp, tokens); + assertEquals(8, tokens.size()); + String[] texts=new String[]{"ab","bc","cd","de","ab","bc","cd","de"}; + int[] starts=new int[]{0,0,0,0,6,6,6,6}; + int[] ends =new int[]{5,5,5,5,11,11,11,11}; + for(int i=0;i