QuantEcon/QuantEcon.jl

Use `StableRNGs` in tests

Open

#275 ouverte le 5 juil. 2022

Voir sur GitHub
 (0 commentaires) (1 réaction) (0 assignés)Julia (300 forks)batch import
enhancementhelp wantedtest

Métriques du dépôt

Stars
 (495 stars)
Métriques de merge PR
 (Merge moyen 1j 1h) (2 PRs mergées en 30 j)

Description

@oyamad asked me to expand my comment in #274 into an issue. Here it is.

A lot of tests currently depend on outcomes of simulations. In order to get reproducible results, the tests set seeds. However the random number streams are not guaranteed to be the same across Julia versions. This led to the problem visible in #274: a test suddenly broke on Julia 1.7 and above.

In order to avoid this one can use the package https://github.com/JuliaRandom/StableRNGs.jl, which guarantees reproducible streams of random numbers across Julia versions.

I am afraid that this would require rewriting some of the functionality of this package to accept an RNG as in

rng = StableRNG(seed::Integer) # random number generator object
rand(rng, X)

Guide contributeur