@Test
public void testSkipMany() {

  assertEquals(null, isChar('a').skipMany().parse("", mode));
  assertEquals(null, isChar('a').skipMany().parse("a", mode));
  assertEquals(null, isChar('a').skipMany().parse("aaa", mode));
  assertFailure(mode, areChars("ab").skipMany(), "aba", 1, 4);
  assertEquals(null, FOO.skipMany().parse("", mode));
  assertEquals(null, isChar('a').skipAtLeast(0).parse("", mode));
  assertFailure(mode, isChar('a').skipAtLeast(1), "", 1, 1);
  assertFailure(mode, areChars("ab").skipAtLeast(1), "aba", 1, 4);
  assertFailure(mode, areChars("ab").skipAtLeast(2), "aba", 1, 4);
  assertEquals(null, FOO.skipAtLeast(0).parse("", mode));
  assertEquals(null, FOO.skipAtLeast(2).parse("", mode));
  assertParser(mode, isChar('a').asDelimiter().next(isChar('b')).skipMany(), "a", null, "a");
  assertEquals("skipAtLeast", isChar('a').skipMany().toString());
  assertEquals("skipAtLeast", isChar('a').skipAtLeast(2).toString());
}