mirror of
https://github.com/golang/go
synced 2024-11-23 20:20:01 -07:00
crypto/x509: fix panic in TestEnvVars, improve style
This panic happens when the test fails due to the returned number of certificates (r.certs) being less than expected by test case (tc.cns). When i == len(r.certs) in the for loop, r.certs[i] will cause an index out of range panic. Also improve readability, consistency and style of the code. Use the more common "got x, want y" pattern. See https://golang.org/s/style#useful-test-failures for reference (and grep codebase for most common occurrences). Add a comment, and remove blank line separating two blocks that are both related to verifying that len(r.certs) == len(tc.cns). This should help with readability. Remove space after colon in call to t.Fatal, since it adds spaces between its arguments. Fixes #20801. Change-Id: I40476103f1b5a0fa74b05637c250926b571c92fd Reviewed-on: https://go-review.googlesource.com/46715 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
93870aeee9
commit
441fd13386
@ -99,7 +99,7 @@ func TestEnvVars(t *testing.T) {
|
||||
|
||||
r, err := loadSystemRoots()
|
||||
if err != nil {
|
||||
t.Fatal("unexpected failure: ", err)
|
||||
t.Fatal("unexpected failure:", err)
|
||||
}
|
||||
|
||||
if r == nil {
|
||||
@ -110,17 +110,17 @@ func TestEnvVars(t *testing.T) {
|
||||
t.Fatal("nil roots")
|
||||
}
|
||||
|
||||
// Verify len(r.certs) == len(tc.cns), otherwise report where the mismatch is.
|
||||
for i, cn := range tc.cns {
|
||||
if i > len(r.certs) {
|
||||
if i >= len(r.certs) {
|
||||
t.Errorf("missing cert %v @ %v", cn, i)
|
||||
} else if r.certs[i].Subject.CommonName != cn {
|
||||
fmt.Printf("%#v\n", r.certs[0].Subject)
|
||||
t.Errorf("unexpected cert common name %q expected %q", r.certs[i].Subject.CommonName, cn)
|
||||
t.Errorf("unexpected cert common name %q, want %q", r.certs[i].Subject.CommonName, cn)
|
||||
}
|
||||
}
|
||||
|
||||
if len(r.certs) > len(tc.cns) {
|
||||
t.Errorf("expected %v certs got %v", len(tc.cns), len(r.certs))
|
||||
t.Errorf("got %v certs, which is more than %v wanted", len(r.certs), len(tc.cns))
|
||||
}
|
||||
})
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user