mirror of
https://github.com/Ed94/Odin.git
synced 2026-06-13 01:21:38 -07:00
Add tests for core:math/rand
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package test_core_math_rand
|
||||
|
||||
import "core:math/rand"
|
||||
import "core:testing"
|
||||
|
||||
@test
|
||||
test_default_rand_determinism :: proc(t: ^testing.T) {
|
||||
rand.reset(13)
|
||||
first_value := rand.int127()
|
||||
rand.reset(13)
|
||||
second_value := rand.int127()
|
||||
|
||||
testing.expect(t, first_value == second_value, "Context default random number generator is non-deterministic.")
|
||||
}
|
||||
|
||||
@test
|
||||
test_default_rand_determinism_user_set :: proc(t: ^testing.T) {
|
||||
rng_state_1 := rand.create(13)
|
||||
rng_state_2 := rand.create(13)
|
||||
|
||||
rng_1 := rand.default_random_generator(&rng_state_1)
|
||||
rng_2 := rand.default_random_generator(&rng_state_2)
|
||||
|
||||
first_value, second_value: i128
|
||||
{
|
||||
context.random_generator = rng_1
|
||||
first_value = rand.int127()
|
||||
}
|
||||
{
|
||||
context.random_generator = rng_2
|
||||
second_value = rand.int127()
|
||||
}
|
||||
|
||||
testing.expect(t, first_value == second_value, "User-set default random number generator is non-deterministic.")
|
||||
}
|
||||
@@ -24,6 +24,7 @@ download_assets :: proc() {
|
||||
@(require) import "math/big"
|
||||
@(require) import "math/linalg/glsl"
|
||||
@(require) import "math/noise"
|
||||
@(require) import "math/rand"
|
||||
@(require) import "mem"
|
||||
@(require) import "net"
|
||||
@(require) import "odin"
|
||||
|
||||
Reference in New Issue
Block a user