@@ -77,25 +77,28 @@ func TestTLSClientHandshakeReturnsAuthInfo(t *testing.T) {
7777 t .Fatalf ("Failed to create server TLS. Error: %v" , err )
7878 }
7979 var serverAuthInfo TLSInfo
80- done := make (chan bool )
80+ errChan := make (chan error )
8181 go func () {
82+ var sErr error
8283 defer func () {
83- done <- true
84+ errChan <- sErr
8485 }()
85- serverRawConn , err := lis .Accept ()
86- if err != nil {
87- t .Fatalf ("Server failed to accept connection: %v" , err )
86+ serverRawConn , sErr := lis .Accept ()
87+ if sErr != nil {
88+ t .Errorf ("Server failed to accept connection: %v" , sErr )
89+ return
8890 }
8991 serverConn := tls .Server (serverRawConn , serverTLS .(* tlsCreds ).config )
90- serverErr := serverConn .Handshake ()
91- if serverErr != nil {
92- t .Fatalf ("Error on server while handshake. Error: %v" , serverErr )
92+ sErr = serverConn .Handshake ()
93+ if sErr != nil {
94+ t .Errorf ("Error on server while handshake. Error: %v" , sErr )
95+ return
9396 }
9497 serverAuthInfo = TLSInfo {serverConn .ConnectionState ()}
9598 }()
9699 conn , err := net .Dial ("tcp" , lis .Addr ().String ())
97100 if err != nil {
98- t .Fatalf ("Client failed to connect to local server . Error: %v" , err )
101+ t .Fatalf ("Client failed to connect to %v . Error: %v" , lis . Addr (). String () , err )
99102 }
100103 defer conn .Close ()
101104 c := NewTLS (& tls.Config {InsecureSkipVerify : true })
@@ -104,7 +107,9 @@ func TestTLSClientHandshakeReturnsAuthInfo(t *testing.T) {
104107 t .Fatalf ("Error on client while handshake. Error: %v" , err )
105108 }
106109 // wait until server has populated the serverAuthInfo struct.
107- <- done
110+ if err = <- errChan ; err != nil {
111+ return
112+ }
108113 if authInfo .(TLSInfo ).State .Version != serverAuthInfo .State .Version {
109114 t .Fatalf ("c.ClientHandshake(_, %v, _) = %v, want %v." , lis .Addr ().String (), authInfo , serverAuthInfo )
110115 }
@@ -121,24 +126,26 @@ func TestTLSServerHandshakeReturnsAuthInfo(t *testing.T) {
121126 t .Fatalf ("Failed to create server TLS. Error: %v" , err )
122127 }
123128 var serverAuthInfo AuthInfo
124- done := make (chan bool )
129+ errChan := make (chan error )
125130 go func () {
131+ var sErr error
126132 defer func () {
127- done <- true
133+ errChan <- sErr
128134 }()
129- serverRawConn , err := lis .Accept ()
130- if err != nil {
131- t .Fatalf ("Server failed to accept connection: %v" , err )
135+ serverRawConn , sErr := lis .Accept ()
136+ if sErr != nil {
137+ t .Errorf ("Server failed to accept connection: %v" , sErr )
138+ return
132139 }
133- var serverErr error
134- _ , serverAuthInfo , serverErr = serverTLS . ServerHandshake ( serverRawConn )
135- if serverErr != nil {
136- t . Fatalf ( "Error on server while handshake. Error: %v" , serverErr )
140+ _ , serverAuthInfo , sErr = serverTLS . ServerHandshake ( serverRawConn )
141+ if sErr != nil {
142+ t . Errorf ( "Error on server while handshake. Error: %v" , sErr )
143+ return
137144 }
138145 }()
139146 conn , err := net .Dial ("tcp" , lis .Addr ().String ())
140147 if err != nil {
141- t .Fatalf ("Client failed to connect to local server . Error: %v" , err )
148+ t .Fatalf ("Client failed to connect to %v . Error: %v" , lis . Addr (). String () , err )
142149 }
143150 defer conn .Close ()
144151 c := NewTLS (& tls.Config {InsecureSkipVerify : true })
@@ -149,7 +156,9 @@ func TestTLSServerHandshakeReturnsAuthInfo(t *testing.T) {
149156 }
150157 authInfo := TLSInfo {clientConn .ConnectionState ()}
151158 // wait until server has populated the serverAuthInfo struct.
152- <- done
159+ if err = <- errChan ; err != nil {
160+ return
161+ }
153162 if authInfo .State .Version != serverAuthInfo .(TLSInfo ).State .Version {
154163 t .Fatalf ("ServerHandshake(_) = %v, want %v." , serverAuthInfo , authInfo )
155164 }
0 commit comments