public double generateNewOptimalDelay()
    {
        final double x = uniformRandom(randMax) + baseX;

        return constantT * Math.log(x * factorT);
    }
@Test
    void shouldNotExceedTmaxBackoff()
    {
        final OptimalMulticastDelayGenerator generator = new OptimalMulticastDelayGenerator(MAX_BACKOFF, GROUP_SIZE);

        for (int i = 0; i < 100_000; i++)
        {
            final double delay = generator.generateNewOptimalDelay();
            assertThat(delay, lessThanOrEqualTo((double)MAX_BACKOFF));
        }
    }