@Test
public void testDistribute_AtLeastOnce() throws Exception {

    Pseudorandom pseudorandom = mock(Pseudorandom.class);
    AbstractHashGenerator f = new AbstractHashGenerator(pseudorandom);
    long x = f.distribute(8L); // lowest 3 bits = 0, make sure we rotate 1
    verify(pseudorandom, times(1)).next(anyLong());
    assertThat(x, is(not(8L)));
}