@Test
  public void testMarkAndReset() {
    UnsyncByteArrayInputStream unsyncByteArrayInputStream = new UnsyncByteArrayInputStream(_BUFFER);

    Assert.assertEquals(0, unsyncByteArrayInputStream.read());
    Assert.assertEquals(1, unsyncByteArrayInputStream.read());

    unsyncByteArrayInputStream.mark(-1);

    Assert.assertEquals(_SIZE - 2, unsyncByteArrayInputStream.available());
    Assert.assertEquals(2, unsyncByteArrayInputStream.read());
    Assert.assertEquals(3, unsyncByteArrayInputStream.read());
    Assert.assertEquals(_SIZE - 4, unsyncByteArrayInputStream.available());

    unsyncByteArrayInputStream.reset();

    Assert.assertEquals(_SIZE - 2, unsyncByteArrayInputStream.available());
    Assert.assertEquals(2, unsyncByteArrayInputStream.read());
    Assert.assertEquals(3, unsyncByteArrayInputStream.read());

    Assert.assertEquals(_SIZE - 4, unsyncByteArrayInputStream.available());
  }