@@ -91,6 +91,8 @@ func TestConn(t *testing.T) {
91
91
// Create a channel that closes on disconnect.
92
92
channel , err := server .CreateChannel (context .Background (), "wow" , nil )
93
93
assert .NoError (t , err )
94
+ defer channel .Close ()
95
+
94
96
err = wan .Stop ()
95
97
require .NoError (t , err )
96
98
// Once the connection is marked as disconnected, this
@@ -107,10 +109,13 @@ func TestConn(t *testing.T) {
107
109
t .Parallel ()
108
110
client , server , _ := createPair (t )
109
111
exchange (t , client , server )
110
- cch , err := client .CreateChannel (context .Background (), "hello" , & peer.ChannelOptions {})
112
+ ctx , cancel := context .WithTimeout (context .Background (), 15 * time .Second )
113
+ defer cancel ()
114
+ cch , err := client .CreateChannel (ctx , "hello" , & peer.ChannelOptions {})
111
115
require .NoError (t , err )
116
+ defer cch .Close ()
112
117
113
- sch , err := server .Accept (context . Background () )
118
+ sch , err := server .Accept (ctx )
114
119
require .NoError (t , err )
115
120
defer sch .Close ()
116
121
@@ -123,9 +128,12 @@ func TestConn(t *testing.T) {
123
128
t .Parallel ()
124
129
client , server , wan := createPair (t )
125
130
exchange (t , client , server )
126
- cch , err := client .CreateChannel (context .Background (), "hello" , & peer.ChannelOptions {})
131
+ ctx , cancel := context .WithTimeout (context .Background (), 15 * time .Second )
132
+ defer cancel ()
133
+ cch , err := client .CreateChannel (ctx , "hello" , & peer.ChannelOptions {})
127
134
require .NoError (t , err )
128
- sch , err := server .Accept (context .Background ())
135
+ defer cch .Close ()
136
+ sch , err := server .Accept (ctx )
129
137
require .NoError (t , err )
130
138
defer sch .Close ()
131
139
@@ -170,13 +178,29 @@ func TestConn(t *testing.T) {
170
178
srv , err := net .Listen ("tcp" , "127.0.0.1:0" )
171
179
require .NoError (t , err )
172
180
defer srv .Close ()
181
+ ctx , cancel := context .WithTimeout (context .Background (), 15 * time .Second )
182
+ defer cancel ()
173
183
go func () {
174
- sch , err := server .Accept (context .Background ())
175
- assert .NoError (t , err )
184
+ sch , err := server .Accept (ctx )
185
+ if err != nil {
186
+ assert .NoError (t , err )
187
+ return
188
+ }
189
+ defer sch .Close ()
190
+
176
191
nc2 := sch .NetConn ()
192
+ defer nc2 .Close ()
193
+
177
194
nc1 , err := net .Dial ("tcp" , srv .Addr ().String ())
178
- assert .NoError (t , err )
195
+ if err != nil {
196
+ assert .NoError (t , err )
197
+ return
198
+ }
199
+ defer nc1 .Close ()
200
+
179
201
go func () {
202
+ defer nc1 .Close ()
203
+ defer nc2 .Close ()
180
204
_ , _ = io .Copy (nc1 , nc2 )
181
205
}()
182
206
_ , _ = io .Copy (nc2 , nc1 )
@@ -204,7 +228,7 @@ func TestConn(t *testing.T) {
204
228
c := http.Client {
205
229
Transport : defaultTransport ,
206
230
}
207
- req , err := http .NewRequestWithContext (context . Background () , "GET" , "http://localhost/" , nil )
231
+ req , err := http .NewRequestWithContext (ctx , "GET" , "http://localhost/" , nil )
208
232
require .NoError (t , err )
209
233
resp , err := c .Do (req )
210
234
require .NoError (t , err )
@@ -272,14 +296,21 @@ func TestConn(t *testing.T) {
272
296
t .Parallel ()
273
297
client , server , _ := createPair (t )
274
298
exchange (t , client , server )
299
+ ctx , cancel := context .WithTimeout (context .Background (), 15 * time .Second )
300
+ defer cancel ()
275
301
go func () {
276
- channel , err := client .CreateChannel (context .Background (), "test" , nil )
277
- assert .NoError (t , err )
302
+ channel , err := client .CreateChannel (ctx , "test" , nil )
303
+ if err != nil {
304
+ assert .NoError (t , err )
305
+ return
306
+ }
307
+ defer channel .Close ()
278
308
_ , err = channel .Write ([]byte {1 , 2 })
279
309
assert .NoError (t , err )
280
310
}()
281
- channel , err := server .Accept (context . Background () )
311
+ channel , err := server .Accept (ctx )
282
312
require .NoError (t , err )
313
+ defer channel .Close ()
283
314
data := make ([]byte , 1 )
284
315
_ , err = channel .Read (data )
285
316
require .NoError (t , err )
0 commit comments