init: v1.0.0
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
package grand_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"xdx.jelly/xgcl/grand"
|
||||
)
|
||||
|
||||
func TestRandZero(t *testing.T) {
|
||||
randReader := grand.ReaderZero
|
||||
buf := make([]byte, 100)
|
||||
n, err := randReader.Read(buf)
|
||||
if err != nil || n != 100 {
|
||||
t.Log(n, err)
|
||||
t.Fail()
|
||||
}
|
||||
}
|
||||
|
||||
func TestRandFromBytes(t *testing.T) {
|
||||
buf := make([]byte, 100)
|
||||
_, _ = grand.ReaderOne.Read(buf)
|
||||
fmt.Println(buf)
|
||||
randReader := bytes.NewReader(buf)
|
||||
|
||||
buf2 := make([]byte, 51)
|
||||
n, err := randReader.Read(buf2)
|
||||
fmt.Println(n, err, buf2)
|
||||
if err != nil || n != len(buf2) {
|
||||
t.Log(n, err)
|
||||
t.Fail()
|
||||
}
|
||||
for _, b := range buf2 {
|
||||
if b != 1 {
|
||||
t.Fail()
|
||||
}
|
||||
}
|
||||
|
||||
n, err = randReader.Read(buf2)
|
||||
fmt.Println(n, err, buf2)
|
||||
if err != nil || n != len(buf2) {
|
||||
t.Log(n, err)
|
||||
t.Fail()
|
||||
}
|
||||
for _, b := range buf2 {
|
||||
if b != 1 {
|
||||
t.Fail()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestInt(t *testing.T) {
|
||||
for bits := 0; bits < 10000; bits++ {
|
||||
n := grand.Int(bits)
|
||||
if n.BitLen() != bits {
|
||||
t.Fatalf("bits = %d, n = %x", bits, n)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user