v / vlib / crypto / rand / utils_test.v
23 lines · 20 sloc · 379 bytes · 8a36fe3fd82b73666e9d0d9e8294c59cced1b268
Raw
1import math.big
2import crypto.rand
3
4fn test_int_big() {
5 z := big.integer_from_int(0)
6 if _ := rand.int_big(z) {
7 assert false
8 } else {
9 assert true
10 }
11
12 n := big.integer_from_int(-1)
13 if _ := rand.int_big(n) {
14 assert false
15 } else {
16 assert true
17 }
18
19 m := big.integer_from_int(1).left_shift(128)
20 l := rand.int_big(m)! // actual large number
21 assert l < m
22 assert l > n
23}
24