Skip to content

Commit af64f27

Browse files
committed
fix(cli): call agent directly in gitssh tests
1 parent 201a6c0 commit af64f27

File tree

1 file changed

+23
-8
lines changed

1 file changed

+23
-8
lines changed

cli/gitssh_test.go

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ import (
1515
"sync/atomic"
1616
"testing"
1717

18+
"cdr.dev/slog"
19+
"cdr.dev/slog/sloggers/slogtest"
20+
21+
"github.com/coder/coder/v2/agent"
22+
"github.com/coder/coder/v2/codersdk/agentsdk"
23+
"github.com/stretchr/testify/assert"
24+
1825
"github.com/gliderlabs/ssh"
1926
"github.com/google/uuid"
2027
"github.com/stretchr/testify/require"
@@ -28,7 +35,7 @@ import (
2835
"github.com/coder/coder/v2/testutil"
2936
)
3037

31-
func prepareTestGitSSH(ctx context.Context, t *testing.T) (*codersdk.Client, string, gossh.PublicKey) {
38+
func prepareTestGitSSH(ctx context.Context, t *testing.T) (*agentsdk.Client, string, gossh.PublicKey) {
3239
t.Helper()
3340

3441
client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true})
@@ -57,12 +64,20 @@ func prepareTestGitSSH(ctx context.Context, t *testing.T) (*codersdk.Client, str
5764
coderdtest.AwaitWorkspaceBuildJob(t, client, workspace.LatestBuild.ID)
5865

5966
// start workspace agent
60-
inv, root := clitest.New(t, "agent", "--agent-token", agentToken, "--agent-url", client.URL.String())
61-
agentClient := codersdk.New(client.URL)
67+
agentLog := slogtest.Make(t, nil).Leveled(slog.LevelDebug).Named("agent")
68+
agentClient := agentsdk.New(client.URL)
6269
agentClient.SetSessionToken(agentToken)
63-
clitest.SetupConfig(t, agentClient, root)
64-
clitest.Start(t, inv)
65-
70+
agt := agent.New(agent.Options{
71+
Client: agentClient,
72+
Logger: agentLog,
73+
LogDir: t.TempDir(),
74+
ExchangeToken: func(_ context.Context) (string, error) {
75+
return agentToken, nil
76+
},
77+
})
78+
t.Cleanup(func() {
79+
assert.NoError(t, agt.Close(), "failed to close agent in cleanup")
80+
})
6681
coderdtest.AwaitWorkspaceAgents(t, client, workspace.ID)
6782
return agentClient, agentToken, pubkey
6883
}
@@ -140,7 +155,7 @@ func TestGitSSH(t *testing.T) {
140155
// set to agent config dir
141156
inv, _ := clitest.New(t,
142157
"gitssh",
143-
"--agent-url", client.URL.String(),
158+
"--agent-url", client.SDK.URL.String(),
144159
"--agent-token", token,
145160
"--",
146161
fmt.Sprintf("-p%d", addr.Port),
@@ -203,7 +218,7 @@ func TestGitSSH(t *testing.T) {
203218
pty := ptytest.New(t)
204219
cmdArgs := []string{
205220
"gitssh",
206-
"--agent-url", client.URL.String(),
221+
"--agent-url", client.SDK.URL.String(),
207222
"--agent-token", token,
208223
"--",
209224
"-F", config,

0 commit comments

Comments
 (0)