@Test public void testGetContent() { final String input = "a b c \"d e\" f "; StrTokenizer tok = new StrTokenizer(input); assertEquals(input, tok.getContent()); tok = new StrTokenizer(input.toCharArray()); assertEquals(input, tok.getContent()); tok = new StrTokenizer(); assertNull(tok.getContent()); }
@Test public void testListArray() { final String input = "a b c"; final StrTokenizer tok = new StrTokenizer(input); final String[] array = tok.getTokenArray(); final List<?> list = tok.getTokenList(); assertEquals(Arrays.asList(array), list); assertEquals(3, list.size()); }
@Test public void testConstructor_charArray() { StrTokenizer tok = new StrTokenizer("a b".toCharArray()); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertFalse(tok.hasNext()); tok = new StrTokenizer(new char[0]); assertFalse(tok.hasNext()); tok = new StrTokenizer((char[]) null); assertFalse(tok.hasNext()); }
@Test public void testConstructor_charArray_char() { StrTokenizer tok = new StrTokenizer("a b".toCharArray(), ' '); assertEquals(1, tok.getDelimiterMatcher().isMatch(" ".toCharArray(), 0, 0, 1)); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertFalse(tok.hasNext()); tok = new StrTokenizer(new char[0], ' '); assertFalse(tok.hasNext()); tok = new StrTokenizer((char[]) null, ' '); assertFalse(tok.hasNext()); }
@Test public void testConstructor_String() { StrTokenizer tok = new StrTokenizer("a b"); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertFalse(tok.hasNext()); tok = new StrTokenizer(""); assertFalse(tok.hasNext()); tok = new StrTokenizer((String) null); assertFalse(tok.hasNext()); }
@Test public void testConstructor_String_char() { StrTokenizer tok = new StrTokenizer("a b", ' '); assertEquals(1, tok.getDelimiterMatcher().isMatch(" ".toCharArray(), 0, 0, 1)); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertFalse(tok.hasNext()); tok = new StrTokenizer("", ' '); assertFalse(tok.hasNext()); tok = new StrTokenizer((String) null, ' '); assertFalse(tok.hasNext()); }
@Test public void testToString() { final StrTokenizer tkn = new StrTokenizer("a b c d e"); assertEquals("StrTokenizer[not tokenized yet]", tkn.toString()); tkn.next(); assertEquals("StrTokenizer[a, b, c, d, e]", tkn.toString()); }
@Test public void testBasicQuoted3() { final String input = "a:'b''c'"; final StrTokenizer tok = new StrTokenizer(input, ':', '\''); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b'c", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testReset_charArray() { final StrTokenizer tok = new StrTokenizer("x x x"); final char[] array = new char[] {'a', 'b', 'c'}; tok.reset(array); assertEquals("abc", tok.next()); assertFalse(tok.hasNext()); tok.reset((char[]) null); assertFalse(tok.hasNext()); }
@Test public void testBasic3() { final String input = "a \nb\u0001\fc"; final StrTokenizer tok = new StrTokenizer(input); assertEquals("a", tok.next()); assertEquals("b\u0001", tok.next()); assertEquals("c", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasic4() { final String input = "a \"b\" c"; final StrTokenizer tok = new StrTokenizer(input); assertEquals("a", tok.next()); assertEquals("\"b\"", tok.next()); assertEquals("c", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicQuoted2() { final String input = "a:'b':"; final StrTokenizer tok = new StrTokenizer(input, ':', '\''); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertNull(tok.next()); assertFalse(tok.hasNext()); }
@Test public void testReset_String() { final StrTokenizer tok = new StrTokenizer("x x x"); tok.reset("d e"); assertEquals("d", tok.next()); assertEquals("e", tok.next()); assertFalse(tok.hasNext()); tok.reset((String) null); assertFalse(tok.hasNext()); }
@Test public void testBasicQuoted5() { final String input = "a: 'b'x'c' :d"; final StrTokenizer tok = new StrTokenizer(input, ':', '\''); tok.setTrimmerMatcher(StrMatcher.trimMatcher()); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("bxc", tok.next()); assertEquals("d", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicQuotedTrimmed1() { final String input = "a: 'b' :"; final StrTokenizer tok = new StrTokenizer(input, ':', '\''); tok.setTrimmerMatcher(StrMatcher.trimMatcher()); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertNull(tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicQuoted4() { final String input = "a: 'b' 'c' :d"; final StrTokenizer tok = new StrTokenizer(input, ':', '\''); tok.setTrimmerMatcher(StrMatcher.trimMatcher()); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b c", tok.next()); assertEquals("d", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicTrimmed1() { final String input = "a: b : "; final StrTokenizer tok = new StrTokenizer(input, ':'); tok.setTrimmerMatcher(StrMatcher.trimMatcher()); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertNull(tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicTrimmed2() { final String input = "a: b :"; final StrTokenizer tok = new StrTokenizer(input, ':'); tok.setTrimmerMatcher(StrMatcher.stringMatcher(" ")); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals("b", tok.next()); assertNull(tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicIgnoreTrimmed3() { final String input = "IGNOREaIGNORE: IGNORE bIGNOREc IGNORE : IGNORE "; final StrTokenizer tok = new StrTokenizer(input, ':'); tok.setIgnoredMatcher(StrMatcher.stringMatcher("IGNORE")); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertEquals(" bc ", tok.next()); assertEquals(" ", tok.next()); assertFalse(tok.hasNext()); }
@Test public void testBasicEmpty2() { final String input = "a b c"; final StrTokenizer tok = new StrTokenizer(input); tok.setIgnoreEmptyTokens(false); tok.setEmptyTokenAsNull(true); assertEquals("a", tok.next()); assertNull(tok.next()); assertEquals("b", tok.next()); assertEquals("c", tok.next()); assertFalse(tok.hasNext()); }