IterateModel implements Iterator<Integer>, Cloneable { public void reset() { currentValue = UNSET; stop = false; }  static IterateModelBuilder custom(); int getStartAt(); void startAt( int startAt ); int getStopAt(); void stopAt( int stopAt ); int getIncrement(); void setIncrement( int increment ); IterateStrategie getIterateStrategie(); void setIterateStrategie( IterateStrategie iterateStrategie ); void setIncreaseIncrementStrategie( IncreaseIncrementStrategie increaseIncrementStrategie ); void increaseIncrement(); int increment( int numberAttributes ); @Override Integer next(); @Override boolean hasNext(); @Override void remove(); void reset(); @Override IterateModel clone();  }
@Test public void reset() { IterateModel iterateModel = IterateModel.custom().startAt( 10 ).stopAt( 11 ).build(); for ( int i = 0; i < 2; i++ ) { assertThat( iterateModel.hasNext(), is( true ) ); assertThat( iterateModel.next(), is( 10 ) ); assertThat( iterateModel.hasNext(), is( true ) ); assertThat( iterateModel.next(), is( 11 ) ); assertThat( iterateModel.hasNext(), is( false ) ); iterateModel.reset(); } }