@Test(expected = IllegalStateException.class)
public void testResetWithoutMark() {

    List<Integer> input = Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
    MarkableIterator<Integer> markableIterator= new MarkableIterator<Integer>(input.iterator());
    Assert.assertEquals(MarkableIterator.State.READ, markableIterator.state);
    markableIterator.reset();
}