package com.miguelfonseca.completely.text.analyze.tokenize; import com.miguelfonseca.completely.text.analyze.AbstractAnalyzerTest; import org.junit.Test; import static org.junit.Assert.assertEquals; public class QGramTokenizerTest extends AbstractAnalyzerTest<QGramTokenizer> { public QGramTokenizerTest() { super(new QGramTokenizer(3)); } @Test public void testCreateNegativeSize() { exceptionRule.expect(IllegalArgumentException.class); new QGramTokenizer(-1); } @Test public void testApply() { Object[] result = analyzer.apply("abcde").toArray(); assertEquals(3, result.length); assertEquals("abc", result[0]); assertEquals("bcd", result[1]); assertEquals("cde", result[2]); } @Test public void testApplyVoid() { Object[] result = analyzer.apply("ab").toArray(); assertEquals(0, result.length); } @Test public void testApplyNullElement() { exceptionRule.expect(NullPointerException.class); analyzer.apply((String) null); } }