@@ -38,17 +38,18 @@ func TestEntitlements(t *testing.T) {
38
38
t .Parallel ()
39
39
t .Run ("NoLicense" , func (t * testing.T ) {
40
40
t .Parallel ()
41
- client , _ := coderdenttest .New (t , & coderdenttest.Options {
41
+ adminClient , adminUser := coderdenttest .New (t , & coderdenttest.Options {
42
42
DontAddLicense : true ,
43
43
})
44
- res , err := client .Entitlements (context .Background ())
44
+ anotherClient , _ := coderdtest .CreateAnotherUser (t , adminClient , adminUser .OrganizationID )
45
+ res , err := anotherClient .Entitlements (context .Background ())
45
46
require .NoError (t , err )
46
47
require .False (t , res .HasLicense )
47
48
require .Empty (t , res .Warnings )
48
49
})
49
50
t .Run ("FullLicense" , func (t * testing.T ) {
50
51
t .Parallel ()
51
- client , _ := coderdenttest .New (t , & coderdenttest.Options {
52
+ adminClient , _ := coderdenttest .New (t , & coderdenttest.Options {
52
53
AuditLogging : true ,
53
54
DontAddLicense : true ,
54
55
})
@@ -58,11 +59,11 @@ func TestEntitlements(t *testing.T) {
58
59
features [feature ] = 1
59
60
}
60
61
features [codersdk .FeatureUserLimit ] = 100
61
- coderdenttest .AddLicense (t , client , coderdenttest.LicenseOptions {
62
+ coderdenttest .AddLicense (t , adminClient , coderdenttest.LicenseOptions {
62
63
Features : features ,
63
64
GraceAt : time .Now ().Add (59 * 24 * time .Hour ),
64
65
})
65
- res , err := client .Entitlements (context .Background ())
66
+ res , err := adminClient .Entitlements (context .Background ()) //nolint:gocritic // adding another user would put us over user limit
66
67
require .NoError (t , err )
67
68
assert .True (t , res .HasLicense )
68
69
ul := res .Features [codersdk .FeatureUserLimit ]
@@ -83,27 +84,28 @@ func TestEntitlements(t *testing.T) {
83
84
})
84
85
t .Run ("FullLicenseToNone" , func (t * testing.T ) {
85
86
t .Parallel ()
86
- client , _ := coderdenttest .New (t , & coderdenttest.Options {
87
+ adminClient , adminUser := coderdenttest .New (t , & coderdenttest.Options {
87
88
AuditLogging : true ,
88
89
DontAddLicense : true ,
89
90
})
90
- license := coderdenttest .AddLicense (t , client , coderdenttest.LicenseOptions {
91
+ anotherClient , _ := coderdtest .CreateAnotherUser (t , adminClient , adminUser .OrganizationID )
92
+ license := coderdenttest .AddLicense (t , adminClient , coderdenttest.LicenseOptions {
91
93
Features : license.Features {
92
94
codersdk .FeatureUserLimit : 100 ,
93
95
codersdk .FeatureAuditLog : 1 ,
94
96
},
95
97
})
96
- res , err := client .Entitlements (context .Background ())
98
+ res , err := anotherClient .Entitlements (context .Background ())
97
99
require .NoError (t , err )
98
100
assert .True (t , res .HasLicense )
99
101
al := res .Features [codersdk .FeatureAuditLog ]
100
102
assert .Equal (t , codersdk .EntitlementEntitled , al .Entitlement )
101
103
assert .True (t , al .Enabled )
102
104
103
- err = client .DeleteLicense (context .Background (), license .ID )
105
+ err = adminClient .DeleteLicense (context .Background (), license .ID )
104
106
require .NoError (t , err )
105
107
106
- res , err = client .Entitlements (context .Background ())
108
+ res , err = anotherClient .Entitlements (context .Background ())
107
109
require .NoError (t , err )
108
110
assert .False (t , res .HasLicense )
109
111
al = res .Features [codersdk .FeatureAuditLog ]
@@ -112,8 +114,9 @@ func TestEntitlements(t *testing.T) {
112
114
})
113
115
t .Run ("Pubsub" , func (t * testing.T ) {
114
116
t .Parallel ()
115
- client , _ , api , _ := coderdenttest .NewWithAPI (t , & coderdenttest.Options {DontAddLicense : true })
116
- entitlements , err := client .Entitlements (context .Background ())
117
+ adminClient , _ , api , adminUser := coderdenttest .NewWithAPI (t , & coderdenttest.Options {DontAddLicense : true })
118
+ anotherClient , _ := coderdtest .CreateAnotherUser (t , adminClient , adminUser .OrganizationID )
119
+ entitlements , err := anotherClient .Entitlements (context .Background ())
117
120
require .NoError (t , err )
118
121
require .False (t , entitlements .HasLicense )
119
122
//nolint:gocritic // unit test
@@ -131,18 +134,19 @@ func TestEntitlements(t *testing.T) {
131
134
err = api .Pubsub .Publish (coderd .PubsubEventLicenses , []byte {})
132
135
require .NoError (t , err )
133
136
require .Eventually (t , func () bool {
134
- entitlements , err := client .Entitlements (context .Background ())
137
+ entitlements , err := anotherClient .Entitlements (context .Background ())
135
138
assert .NoError (t , err )
136
139
return entitlements .HasLicense
137
140
}, testutil .WaitShort , testutil .IntervalFast )
138
141
})
139
142
t .Run ("Resync" , func (t * testing.T ) {
140
143
t .Parallel ()
141
- client , _ , api , _ := coderdenttest .NewWithAPI (t , & coderdenttest.Options {
144
+ adminClient , _ , api , adminUser := coderdenttest .NewWithAPI (t , & coderdenttest.Options {
142
145
EntitlementsUpdateInterval : 25 * time .Millisecond ,
143
146
DontAddLicense : true ,
144
147
})
145
- entitlements , err := client .Entitlements (context .Background ())
148
+ anotherClient , _ := coderdtest .CreateAnotherUser (t , adminClient , adminUser .OrganizationID )
149
+ entitlements , err := anotherClient .Entitlements (context .Background ())
146
150
require .NoError (t , err )
147
151
require .False (t , entitlements .HasLicense )
148
152
// Valid
@@ -177,7 +181,7 @@ func TestEntitlements(t *testing.T) {
177
181
})
178
182
require .NoError (t , err )
179
183
require .Eventually (t , func () bool {
180
- entitlements , err := client .Entitlements (context .Background ())
184
+ entitlements , err := anotherClient .Entitlements (context .Background ())
181
185
assert .NoError (t , err )
182
186
return entitlements .HasLicense
183
187
}, testutil .WaitShort , testutil .IntervalFast )
@@ -224,7 +228,7 @@ func TestAuditLogging(t *testing.T) {
224
228
DontAddLicense : true ,
225
229
})
226
230
workspace , agent := setupWorkspaceAgent (t , client , user , 0 )
227
- conn , err := client .DialWorkspaceAgent (ctx , agent .ID , nil )
231
+ conn , err := client .DialWorkspaceAgent (ctx , agent .ID , nil ) //nolint:gocritic // RBAC is not the purpose of this test
228
232
require .NoError (t , err )
229
233
defer conn .Close ()
230
234
connected := conn .AwaitReachable (ctx )
0 commit comments