mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-31 06:46:50 +01:00
tests: Do not fetch and print the random seed from the top level.
* guix/tests.scm (%seed): Turn into a memoizing procedure. (random-text, random-bytevector): Adjust accordingly.
This commit is contained in:
parent
f59ec1de94
commit
ccf3dcba3d
1 changed files with 6 additions and 4 deletions
|
@ -160,15 +160,17 @@ (define (random-seed)
|
|||
number->string)
|
||||
(logxor (getpid) (car (gettimeofday)))))
|
||||
|
||||
(define %seed
|
||||
(define (%seed)
|
||||
(let ((seed (random-seed)))
|
||||
(format (current-error-port) "random seed for tests: ~a~%"
|
||||
seed)
|
||||
(seed->random-state seed)))
|
||||
(let ((result (seed->random-state seed)))
|
||||
(set! %seed (lambda () result))
|
||||
result)))
|
||||
|
||||
(define (random-text)
|
||||
"Return the hexadecimal representation of a random number."
|
||||
(number->string (random (expt 2 256) %seed) 16))
|
||||
(number->string (random (expt 2 256) (%seed)) 16))
|
||||
|
||||
(define (random-bytevector n)
|
||||
"Return a random bytevector of N bytes."
|
||||
|
@ -176,7 +178,7 @@ (define (random-bytevector n)
|
|||
(let loop ((i 0))
|
||||
(if (< i n)
|
||||
(begin
|
||||
(bytevector-u8-set! bv i (random 256 %seed))
|
||||
(bytevector-u8-set! bv i (random 256 (%seed)))
|
||||
(loop (1+ i)))
|
||||
bv))))
|
||||
|
||||
|
|
Loading…
Reference in a new issue