~ chicken-core (chicken-5) c6e3fd1d97304b413f8f2361e60954e7b8382dd9
commit c6e3fd1d97304b413f8f2361e60954e7b8382dd9
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Fri Nov 3 13:57:43 2017 +0100
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Fri Nov 3 13:57:43 2017 +0100
added simple re-seeding test
diff --git a/tests/random-tests.scm b/tests/random-tests.scm
new file mode 100644
index 00000000..b8c4579a
--- /dev/null
+++ b/tests/random-tests.scm
@@ -0,0 +1,18 @@
+;;;; random number tests
+
+
+(import (chicken random))
+
+(define seed (random-bytes))
+
+(define (nums n)
+ (let loop ((n n))
+ (if (zero? n)
+ '()
+ (cons (pseudo-random-integer 10000)
+ (nums (- n 1))))))
+
+(set-pseudo-random-seed! seed)
+(define n1 (nums 100))
+(set-pseudo-random-seed! seed)
+(assert n1 (nums 100))
diff --git a/tests/runtests.bat b/tests/runtests.bat
index 67f3a227..77058732 100644
--- a/tests/runtests.bat
+++ b/tests/runtests.bat
@@ -406,6 +406,10 @@ if errorlevel 1 exit /b 1
a.out
if errorlevel 1 exit /b 1
+echo"======================================== random number tests ...
+%interpret% -s random-tests.scm
+if errorlevel 1 exit /b 1
+
echo ======================================== string->number tests ...
%interpret% -s numbers-string-conversion-tests.scm
if errorlevel 1 exit /b 1
diff --git a/tests/runtests.sh b/tests/runtests.sh
index 24dae5c1..73f3b6cb 100755
--- a/tests/runtests.sh
+++ b/tests/runtests.sh
@@ -327,6 +327,9 @@ echo "======================================== fixnum tests ..."
$compile fixnum-tests.scm
./a.out
+echo "======================================== random number tests ..."
+$interpret -s random-tests.scm
+
echo "======================================== string->number tests ..."
$interpret -s numbers-string-conversion-tests.scm
$compile -specialize numbers-string-conversion-tests.scm
Trap