Skip to content

Commit 38f23ea

Browse files
committed
fix: fix TestServiceBanners/Agent
1 parent 0a384f2 commit 38f23ea

File tree

1 file changed

+22
-24
lines changed

1 file changed

+22
-24
lines changed

enterprise/coderd/appearance_test.go

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ import (
66
"net/http"
77
"testing"
88

9-
"github.com/google/uuid"
9+
"github.com/coder/coder/v2/coderd/database/dbtestutil"
10+
11+
"github.com/coder/coder/v2/coderd/database"
12+
"github.com/coder/coder/v2/coderd/database/dbfake"
13+
1014
"github.com/stretchr/testify/assert"
1115
"github.com/stretchr/testify/require"
1216

@@ -17,7 +21,6 @@ import (
1721
"github.com/coder/coder/v2/enterprise/coderd"
1822
"github.com/coder/coder/v2/enterprise/coderd/coderdenttest"
1923
"github.com/coder/coder/v2/enterprise/coderd/license"
20-
"github.com/coder/coder/v2/provisioner/echo"
2124
"github.com/coder/coder/v2/testutil"
2225
)
2326

@@ -125,13 +128,15 @@ func TestServiceBanners(t *testing.T) {
125128
ctx, cancel := context.WithTimeout(context.Background(), testutil.WaitLong)
126129
defer cancel()
127130

131+
store, ps := dbtestutil.NewDB(t)
128132
client, user := coderdenttest.New(t, &coderdenttest.Options{
129133
Options: &coderdtest.Options{
130-
IncludeProvisionerDaemon: true,
134+
Database: store,
135+
Pubsub: ps,
131136
},
132137
DontAddLicense: true,
133138
})
134-
license := coderdenttest.AddLicense(t, client, coderdenttest.LicenseOptions{
139+
lic := coderdenttest.AddLicense(t, client, coderdenttest.LicenseOptions{
135140
Features: license.Features{
136141
codersdk.FeatureAppearance: 1,
137142
},
@@ -146,35 +151,28 @@ func TestServiceBanners(t *testing.T) {
146151
err := client.UpdateAppearance(ctx, cfg)
147152
require.NoError(t, err)
148153

149-
authToken := uuid.NewString()
150-
agentClient := agentsdk.New(client.URL)
151-
agentClient.SetSessionToken(authToken)
152-
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, &echo.Responses{
153-
Parse: echo.ParseComplete,
154-
ProvisionPlan: echo.PlanComplete,
155-
ProvisionApply: echo.ProvisionApplyWithAgent(authToken),
156-
})
157-
template := coderdtest.CreateTemplate(t, client, user.OrganizationID, version.ID)
158-
coderdtest.AwaitTemplateVersionJobCompleted(t, client, version.ID)
159-
workspace := coderdtest.CreateWorkspace(t, client, user.OrganizationID, template.ID)
160-
coderdtest.AwaitWorkspaceBuildJobCompleted(t, client, workspace.LatestBuild.ID)
154+
r := dbfake.WorkspaceBuild(t, store, database.Workspace{
155+
OrganizationID: user.OrganizationID,
156+
OwnerID: user.UserID,
157+
}).WithAgent().Do()
161158

159+
agentClient := agentsdk.New(client.URL)
160+
agentClient.SetSessionToken(r.AgentToken)
162161
banner, err := agentClient.GetServiceBanner(ctx)
163162
require.NoError(t, err)
164163
require.Equal(t, cfg.ServiceBanner, banner)
165164

166-
// No enterprise means a 404 on the endpoint meaning no banner.
167-
client = coderdtest.New(t, &coderdtest.Options{
168-
IncludeProvisionerDaemon: true,
169-
})
170-
agentClient = agentsdk.New(client.URL)
171-
agentClient.SetSessionToken(authToken)
172-
banner, err = agentClient.GetServiceBanner(ctx)
165+
// Create an AGPL Coderd against the same database
166+
agplClient := coderdtest.New(t, &coderdtest.Options{Database: store, Pubsub: ps})
167+
agplAgentClient := agentsdk.New(agplClient.URL)
168+
agplAgentClient.SetSessionToken(r.AgentToken)
169+
banner, err = agplAgentClient.GetServiceBanner(ctx)
173170
require.NoError(t, err)
174171
require.Equal(t, codersdk.ServiceBannerConfig{}, banner)
175172

176173
// No license means no banner.
177-
client.DeleteLicense(ctx, license.ID)
174+
err = client.DeleteLicense(ctx, lic.ID)
175+
require.NoError(t, err)
178176
banner, err = agentClient.GetServiceBanner(ctx)
179177
require.NoError(t, err)
180178
require.Equal(t, codersdk.ServiceBannerConfig{}, banner)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy