@Test
public void testMapAndMapAgain() {

    UniformMapper<Integer, Integer> firstMapper = new SHA256UniformMapper<>(new Random(42));
    UniformMapper<Integer, Integer> secondMapper = new SHA256UniformMapper<>(new Random(21));
    int cnt = 0;
    for (int i = 0; i < 100_000; i++) {
        double firstPnt = firstMapper.map(i, i);
        double secondPnt = secondMapper.map(i, i);
        if (firstPnt < 0.5 && secondPnt < 0.5)
            cnt++;
    }
    double err = 1.0 * Math.abs(cnt - 25_000) / 25_000;
    // Hash function should provide a good distribution so that error should be less that 2% in case 10^5 tests.
    assertTrue(err < 0.02);
}