]> Cypherpunks repositories - gostls13.git/commitdiff
archive/zip, crypto/tls: use rand.Read instead of casting ints to bytes
authorCarl Mastrangelo <carl.mastrangelo@gmail.com>
Mon, 3 Jul 2017 22:38:55 +0000 (15:38 -0700)
committerFilippo Valsorda <hi@filippo.io>
Wed, 1 Nov 2017 05:51:30 +0000 (05:51 +0000)
Makes tests run ~1ms faster.

Change-Id: Ida509952469540280996d2bd9266724829e53c91
Reviewed-on: https://go-review.googlesource.com/47359
Reviewed-by: Filippo Valsorda <hi@filippo.io>
Run-TryBot: Filippo Valsorda <hi@filippo.io>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/archive/zip/writer_test.go
src/crypto/tls/handshake_messages_test.go

index 3072f600278fcb89fcabd5485e03d0c8e95ee759..e0bcad61d317ece902ae1306363747a07e8fda38 100644 (file)
@@ -58,8 +58,8 @@ var writeTests = []WriteTest{
 
 func TestWriter(t *testing.T) {
        largeData := make([]byte, 1<<17)
-       for i := range largeData {
-               largeData[i] = byte(rand.Int())
+       if _, err := rand.Read(largeData); err != nil {
+               t.Fatal("rand.Read failed:", err)
        }
        writeTests[1].Data = largeData
        defer func() {
@@ -201,8 +201,8 @@ func TestWriterUTF8(t *testing.T) {
 
 func TestWriterOffset(t *testing.T) {
        largeData := make([]byte, 1<<17)
-       for i := range largeData {
-               largeData[i] = byte(rand.Int())
+       if _, err := rand.Read(largeData); err != nil {
+               t.Fatal("rand.Read failed:", err)
        }
        writeTests[1].Data = largeData
        defer func() {
index aa7f9370bf9811e21cfcf5b2e33b73fb1b57261d..37eb748eea7b40684a9eb22fae05ba7d0706d622 100644 (file)
@@ -98,8 +98,8 @@ func TestFuzz(t *testing.T) {
 
 func randomBytes(n int, rand *rand.Rand) []byte {
        r := make([]byte, n)
-       for i := 0; i < n; i++ {
-               r[i] = byte(rand.Int31())
+       if _, err := rand.Read(r); err != nil {
+               panic("rand.Read failed: " + err.Error())
        }
        return r
 }