Skip to content

Commit 6829588

Browse files
committed
chore: move workspace apps tests to new package
1 parent 63f9ef2 commit 6829588

File tree

6 files changed

+1544
-1446
lines changed

6 files changed

+1544
-1446
lines changed

coderd/activitybump_test.go

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,14 @@ import (
99
"github.com/stretchr/testify/require"
1010

1111
"cdr.dev/slog/sloggers/slogtest"
12+
"github.com/coder/coder/agent"
1213
"github.com/coder/coder/coderd/coderdtest"
1314
"github.com/coder/coder/coderd/database"
1415
"github.com/coder/coder/coderd/schedule"
1516
"github.com/coder/coder/codersdk"
17+
"github.com/coder/coder/codersdk/agentsdk"
18+
"github.com/coder/coder/provisioner/echo"
19+
"github.com/coder/coder/provisionersdk/proto"
1620
"github.com/coder/coder/testutil"
1721
)
1822

@@ -29,7 +33,6 @@ func TestWorkspaceActivityBump(t *testing.T) {
2933
}
3034

3135
client = coderdtest.New(t, &coderdtest.Options{
32-
AppHostname: proxyTestSubdomainRaw,
3336
IncludeProvisionerDaemon: true,
3437
// Agent stats trigger the activity bump, so we want to report
3538
// very frequently in tests.
@@ -47,9 +50,45 @@ func TestWorkspaceActivityBump(t *testing.T) {
4750
user := coderdtest.CreateFirstUser(t, client)
4851

4952
ttlMillis := int64(ttl / time.Millisecond)
50-
workspace = createWorkspaceWithApps(t, client, user.OrganizationID, "", 1234, func(cwr *codersdk.CreateWorkspaceRequest) {
53+
agentToken := uuid.NewString()
54+
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, &echo.Responses{
55+
Parse: echo.ParseComplete,
56+
ProvisionPlan: echo.ProvisionComplete,
57+
ProvisionApply: []*proto.Provision_Response{{
58+
Type: &proto.Provision_Response_Complete{
59+
Complete: &proto.Provision_Complete{
60+
Resources: []*proto.Resource{{
61+
Name: "example",
62+
Type: "aws_instance",
63+
Agents: []*proto.Agent{{
64+
Id: uuid.NewString(),
65+
Name: "agent",
66+
Auth: &proto.Agent_Token{
67+
Token: agentToken,
68+
},
69+
}},
70+
}},
71+
},
72+
},
73+
}},
74+
})
75+
template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
76+
coderdtest.AwaitTemplateVersionJob(t, client, version.ID)
77+
workspace = coderdtest.CreateWorkspace(t, client, user.OrganizationID, template.ID, func(cwr *codersdk.CreateWorkspaceRequest) {
5178
cwr.TTLMillis = &ttlMillis
5279
})
80+
coderdtest.AwaitWorkspaceBuildJob(t, client, workspace.LatestBuild.ID)
81+
82+
agentClient := agentsdk.New(client.URL)
83+
agentClient.SetSessionToken(agentToken)
84+
agentCloser := agent.New(agent.Options{
85+
Client: agentClient,
86+
Logger: slogtest.Make(t, nil).Named("agent"),
87+
})
88+
t.Cleanup(func() {
89+
_ = agentCloser.Close()
90+
})
91+
coderdtest.AwaitWorkspaceAgents(t, client, workspace.ID)
5392

5493
// Sanity-check that deadline is near.
5594
workspace, err := client.Workspace(ctx, workspace.ID)

coderd/client_test.go

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,6 @@ import (
1414
// While running tests in parallel, the web server seems to be overloaded and responds with HTTP 502.
1515
// require.Eventually expects correct HTTP responses.
1616

17-
func doWithRetries(t require.TestingT, client *codersdk.Client, req *http.Request) (*http.Response, error) {
18-
var resp *http.Response
19-
var err error
20-
require.Eventually(t, func() bool {
21-
// nolint // only requests which are not passed upstream have a body closed
22-
resp, err = client.HTTPClient.Do(req)
23-
if resp != nil && resp.StatusCode == http.StatusBadGateway {
24-
if resp.Body != nil {
25-
resp.Body.Close()
26-
}
27-
return false
28-
}
29-
return true
30-
}, testutil.WaitLong, testutil.IntervalFast)
31-
return resp, err
32-
}
33-
3417
func requestWithRetries(ctx context.Context, t require.TestingT, client *codersdk.Client, method, path string, body interface{}, opts ...codersdk.RequestOption) (*http.Response, error) {
3518
var resp *http.Response
3619
var err error

0 commit comments

Comments
 (0)