@Test
public void matchAsCharSequence_subSequence_full() {

  CharSequence match = first(">=").in("foo >= bar").get().subSequence(0, 2);
  assertThat(match.length()).isEqualTo(2);
  assertThat(match.charAt(0)).isEqualTo('>');
  assertThat(match.charAt(1)).isEqualTo('=');
  assertThat(match.toString()).isEqualTo(">=");
  assertThrows(IndexOutOfBoundsException.class, () -> match.charAt(-1));
  assertThrows(IndexOutOfBoundsException.class, () -> match.charAt(2));
  assertThrows(IndexOutOfBoundsException.class, () -> match.charAt(Integer.MAX_VALUE));
  assertThrows(IndexOutOfBoundsException.class, () -> match.charAt(Integer.MIN_VALUE));
  assertThrows(IndexOutOfBoundsException.class, () -> match.subSequence(-1, 1));
  assertThrows(IndexOutOfBoundsException.class, () -> match.subSequence(3, 3));
  assertThrows(IndexOutOfBoundsException.class, () -> match.subSequence(0, 3));
}