### Question:
GenerateUntil extends LoopGenerator<E> { @Override public int hashCode() { int result = "GenerateUntil".hashCode(); result <<= 2; Generator<?> gen = getWrappedGenerator(); result ^= gen.hashCode(); result <<= 2; result ^= test.hashCode(); return result; } GenerateUntil(Generator<? extends E> wrapped, Predicate<? super E> test); void run(final Procedure<? super E> proc); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void testHashcode() { assertEquals(generateUntil.hashCode(), generateUntil.hashCode()); assertEquals(generateUntil.hashCode(), new GenerateUntil<Integer>(wrappedGenerator, isMoreThanFive).hashCode()); }