@@ -6,7 +6,11 @@ import (
6
6
"net/http"
7
7
"testing"
8
8
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
+
10
14
"github.com/stretchr/testify/assert"
11
15
"github.com/stretchr/testify/require"
12
16
@@ -17,7 +21,6 @@ import (
17
21
"github.com/coder/coder/v2/enterprise/coderd"
18
22
"github.com/coder/coder/v2/enterprise/coderd/coderdenttest"
19
23
"github.com/coder/coder/v2/enterprise/coderd/license"
20
- "github.com/coder/coder/v2/provisioner/echo"
21
24
"github.com/coder/coder/v2/testutil"
22
25
)
23
26
@@ -125,13 +128,15 @@ func TestServiceBanners(t *testing.T) {
125
128
ctx ,cancel := context .WithTimeout (context .Background (),testutil .WaitLong )
126
129
defer cancel ()
127
130
131
+ store ,ps := dbtestutil .NewDB (t )
128
132
client ,user := coderdenttest .New (t ,& coderdenttest.Options {
129
133
Options :& coderdtest.Options {
130
- IncludeProvisionerDaemon :true ,
134
+ Database :store ,
135
+ Pubsub :ps ,
131
136
},
132
137
DontAddLicense :true ,
133
138
})
134
- license := coderdenttest .AddLicense (t ,client , coderdenttest.LicenseOptions {
139
+ lic := coderdenttest .AddLicense (t ,client , coderdenttest.LicenseOptions {
135
140
Features : license.Features {
136
141
codersdk .FeatureAppearance :1 ,
137
142
},
@@ -146,35 +151,28 @@ func TestServiceBanners(t *testing.T) {
146
151
err := client .UpdateAppearance (ctx ,cfg )
147
152
require .NoError (t ,err )
148
153
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 ()
161
158
159
+ agentClient := agentsdk .New (client .URL )
160
+ agentClient .SetSessionToken (r .AgentToken )
162
161
banner ,err := agentClient .GetServiceBanner (ctx )
163
162
require .NoError (t ,err )
164
163
require .Equal (t ,cfg .ServiceBanner ,banner )
165
164
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 )
173
170
require .NoError (t ,err )
174
171
require .Equal (t , codersdk.ServiceBannerConfig {},banner )
175
172
176
173
// No license means no banner.
177
- client .DeleteLicense (ctx ,license .ID )
174
+ err = client .DeleteLicense (ctx ,lic .ID )
175
+ require .NoError (t ,err )
178
176
banner ,err = agentClient .GetServiceBanner (ctx )
179
177
require .NoError (t ,err )
180
178
require .Equal (t , codersdk.ServiceBannerConfig {},banner )