AbstractCharStreamScanner implements CharStreamScanner { @Override public boolean expectStrict(String expected) { return expectStrict(expected, false); } AbstractCharStreamScanner(); @Override int readDigit(); @Override double readDouble(); @Override float readFloat(); @Override int skipWhile(CharFilter filter); @Override char skipWhileAndPeek(CharFilter filter); @Override char skipWhileAndPeek(CharFilter filter, int max); @Override String readWhile(CharFilter filter); @Override String readUntil(CharFilter filter, boolean acceptEof, String stop); @Override String readUntil(CharFilter filter, boolean acceptEot, String stop, boolean ignoreCase); @Override boolean skipOver(String substring); @Override boolean skipOver(String substring, boolean ignoreCase); @Override String readLine(); @Override boolean expect(String expected); @Override boolean expectStrict(String expected); @Override Character readJavaCharLiteral(); @Override String readJavaStringLiteral();  }
@Test public void testExpectStrict() { String string = "Hello World!"; CharStreamScanner scanner = scanner(string, true); assertThat(scanner.expectStrict("Hello WorlD", false)).isFalse(); assertThat(scanner.expectStrict("Hello ", false)).isTrue(); assertThat(scanner.expectStrict("WorlD!", true)).isTrue(); assertThat(scanner.hasNext()).isFalse(); }