Fix test_compute_relative_contrast_with_random_data() #706
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why
test_compute_relative_contrast_with_random_data()test still fails intermittently becauseaverage_squared_distance()internally creates its own RNG usingrandom::create_rnd().random::create_rnd()to produce a deterministic, seeded RNG. However, the function is compiled in dev mode rather than test mode, so it doesn’t behave deterministically, leading to flaky test behavior.What
average_squared_distance()so the caller (including tests) can inject a deterministic RNG.random::create_rnd()so that when compiled withfeature = "testing", it returns a seeded, deterministic RNG.Now, multiple runs of the test produce the same output: