@@ -171,17 +171,13 @@ func TestSSH(t *testing.T) {
171
171
t .Parallel ()
172
172
173
173
client , workspace , agentToken := setupWorkspaceForSSH (t )
174
- _ , _ = tGoContext (t , func (ctx context.Context ) {
175
- // Run this async so the SSH command has to wait for
176
- // the build and agent to connect!
177
- agentClient := codersdk .New (client .URL )
178
- agentClient .SessionToken = agentToken
179
- agentCloser := agent .New (agentClient .ListenWorkspaceAgent , & agent.Options {
180
- Logger : slogtest .Make (t , nil ).Leveled (slog .LevelDebug ),
181
- })
182
- <- ctx .Done ()
183
- _ = agentCloser .Close ()
174
+
175
+ agentClient := codersdk .New (client .URL )
176
+ agentClient .SessionToken = agentToken
177
+ agentCloser := agent .New (agentClient .ListenWorkspaceAgent , & agent.Options {
178
+ Logger : slogtest .Make (t , nil ).Leveled (slog .LevelDebug ),
184
179
})
180
+ defer agentCloser .Close ()
185
181
186
182
// Generate private key.
187
183
privateKey , err := ecdsa .GenerateKey (elliptic .P256 (), rand .Reader )
@@ -202,15 +198,16 @@ func TestSSH(t *testing.T) {
202
198
fd , err := l .Accept ()
203
199
if err != nil {
204
200
if ! errors .Is (err , net .ErrClosed ) {
205
- t . Logf ( "accept error: %v" , err )
201
+ assert . NoError ( t , err , "listener accept failed" )
206
202
}
207
203
return
208
204
}
209
205
210
206
err = gosshagent .ServeAgent (kr , fd )
211
207
if ! errors .Is (err , io .EOF ) {
212
- assert .NoError (t , err )
208
+ assert .NoError (t , err , "serve agent failed" )
213
209
}
210
+ _ = fd .Close ()
214
211
}
215
212
})
216
213
@@ -230,7 +227,7 @@ func TestSSH(t *testing.T) {
230
227
cmd .SetErr (pty .Output ())
231
228
cmdDone := tGo (t , func () {
232
229
err := cmd .ExecuteContext (ctx )
233
- assert .NoError (t , err )
230
+ assert .NoError (t , err , "ssh command failed" )
234
231
})
235
232
236
233
// Ensure that SSH_AUTH_SOCK is set.
@@ -241,7 +238,7 @@ func TestSSH(t *testing.T) {
241
238
// Ensure that ssh-add lists our key.
242
239
pty .WriteLine ("ssh-add -L" )
243
240
keys , err := kr .List ()
244
- require .NoError (t , err )
241
+ require .NoError (t , err , "list keys failed" )
245
242
pty .ExpectMatch (keys [0 ].String ())
246
243
247
244
// And we're done.
0 commit comments