1
1
package authzquery_test
2
2
3
3
import (
4
- "testing"
5
4
"time"
6
5
7
6
"github.com/coder/coder/coderd/util/slice"
@@ -15,227 +14,169 @@ import (
15
14
16
15
func (s * MethodTestSuite ) TestUser () {
17
16
s .Run ("DeleteAPIKeysByUserID" , func () {
18
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
19
- u := dbgen .User (t , db , database.User {})
20
- return methodCase (values (u .ID ), asserts (rbac .ResourceAPIKey .WithOwner (u .ID .String ()), rbac .ActionDelete ), values ())
21
- })
17
+ u := dbgen .User (s .T (), s .DB , database.User {})
18
+ s .Args (u .ID ).Asserts (rbac .ResourceAPIKey .WithOwner (u .ID .String ()), rbac .ActionDelete ).Returns ()
22
19
})
23
20
s .Run ("GetQuotaAllowanceForUser" , func () {
24
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
25
- u := dbgen .User (t , db , database.User {})
26
- return methodCase (values (u .ID ), asserts (u , rbac .ActionRead ), values (int64 (0 )))
27
- })
21
+ u := dbgen .User (s .T (), s .DB , database.User {})
22
+ s .Args (u .ID ).Asserts (u , rbac .ActionRead ).Returns (int64 (0 ))
28
23
})
29
24
s .Run ("GetQuotaConsumedForUser" , func () {
30
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
31
- u := dbgen .User (t , db , database.User {})
32
- return methodCase (values (u .ID ), asserts (u , rbac .ActionRead ), values (int64 (0 )))
33
- })
25
+ u := dbgen .User (s .T (), s .DB , database.User {})
26
+ s .Args (u .ID ).Asserts (u , rbac .ActionRead ).Returns (int64 (0 ))
34
27
})
35
28
s .Run ("GetUserByEmailOrUsername" , func () {
36
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
37
- u := dbgen .User (t , db , database.User {})
38
- return methodCase (values (database.GetUserByEmailOrUsernameParams {
39
- Username : u .Username ,
40
- Email : u .Email ,
41
- }), asserts (u , rbac .ActionRead ), values (u ))
42
- })
29
+ u := dbgen .User (s .T (), s .DB , database.User {})
30
+ s .Args (database.GetUserByEmailOrUsernameParams {
31
+ Username : u .Username ,
32
+ Email : u .Email ,
33
+ }).Asserts (u , rbac .ActionRead ).Returns (u )
43
34
})
44
35
s .Run ("GetUserByID" , func () {
45
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
46
- u := dbgen .User (t , db , database.User {})
47
- return methodCase (values (u .ID ), asserts (u , rbac .ActionRead ), values (u ))
48
- })
36
+ u := dbgen .User (s .T (), s .DB , database.User {})
37
+ s .Args (u .ID ).Asserts (u , rbac .ActionRead ).Returns (u )
49
38
})
50
39
s .Run ("GetAuthorizedUserCount" , func () {
51
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
52
- _ = dbgen .User (t , db , database.User {})
53
- return methodCase (values (database.GetFilteredUserCountParams {}, emptyPreparedAuthorized {}), asserts (), values (int64 (1 )))
54
- })
40
+ _ = dbgen .User (s .T (), s .DB , database.User {})
41
+ s .Args (database.GetFilteredUserCountParams {}, emptyPreparedAuthorized {}).Asserts ().Returns (int64 (1 ))
55
42
})
56
43
s .Run ("GetFilteredUserCount" , func () {
57
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
58
- _ = dbgen .User (t , db , database.User {})
59
- return methodCase (values (database.GetFilteredUserCountParams {}), asserts (), values (int64 (1 )))
60
- })
44
+ _ = dbgen .User (s .T (), s .DB , database.User {})
45
+ s .Args (database.GetFilteredUserCountParams {}).Asserts ().Returns (int64 (1 ))
61
46
})
62
47
s .Run ("GetUsers" , func () {
63
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
64
- a := dbgen .User (t , db , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
65
- b := dbgen .User (t , db , database.User {CreatedAt : database .Now ()})
66
- return methodCase (values (database.GetUsersParams {}),
67
- asserts (a , rbac .ActionRead , b , rbac .ActionRead ),
68
- nil )
69
- })
48
+ a := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
49
+ b := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ()})
50
+ s .Args (database.GetUsersParams {}).Asserts (a , rbac .ActionRead , b , rbac .ActionRead ).Returns (slice .New (a , b ))
70
51
})
71
52
s .Run ("GetUsersWithCount" , func () {
72
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
73
- a := dbgen .User (t , db , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
74
- b := dbgen .User (t , db , database.User {CreatedAt : database .Now ()})
75
- return methodCase (values (database.GetUsersParams {}), asserts (a , rbac .ActionRead , b , rbac .ActionRead ), nil )
76
- })
53
+ a := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
54
+ b := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ()})
55
+ s .Args (database.GetUsersParams {}).Asserts (a , rbac .ActionRead , b , rbac .ActionRead ).Returns (nil )
77
56
})
78
57
s .Run ("GetUsersByIDs" , func () {
79
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
80
- a := dbgen .User (t , db , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
81
- b := dbgen .User (t , db , database.User {CreatedAt : database .Now ()})
82
- return methodCase (values ([]uuid.UUID {a .ID , b .ID }),
83
- asserts (a , rbac .ActionRead , b , rbac .ActionRead ),
84
- values (slice .New (a , b )))
85
- })
58
+ a := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ().Add (- time .Hour )})
59
+ b := dbgen .User (s .T (), s .DB , database.User {CreatedAt : database .Now ()})
60
+ s .Args ([]uuid.UUID {a .ID , b .ID }).Asserts (a , rbac .ActionRead , b , rbac .ActionRead ).Returns (slice .New (a , b ))
86
61
})
87
62
s .Run ("InsertUser" , func () {
88
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
89
- return methodCase (values (database.InsertUserParams {
90
- ID : uuid .New (),
91
- LoginType : database .LoginTypePassword ,
92
- }), asserts (rbac .ResourceRoleAssignment , rbac .ActionCreate , rbac .ResourceUser , rbac .ActionCreate ), nil )
93
- })
63
+ s .Args (database.InsertUserParams {
64
+ ID : uuid .New (),
65
+ LoginType : database .LoginTypePassword ,
66
+ }).Asserts (rbac .ResourceRoleAssignment , rbac .ActionCreate , rbac .ResourceUser , rbac .ActionCreate ).Returns ()
94
67
})
95
68
s .Run ("InsertUserLink" , func () {
96
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
97
- u := dbgen .User (t , db , database.User {})
98
- return methodCase (values (database.InsertUserLinkParams {
99
- UserID : u .ID ,
100
- LoginType : database .LoginTypeOIDC ,
101
- }), asserts (u , rbac .ActionUpdate ), nil )
102
- })
69
+ u := dbgen .User (s .T (), s .DB , database.User {})
70
+ s .Args (database.InsertUserLinkParams {
71
+ UserID : u .ID ,
72
+ LoginType : database .LoginTypeOIDC ,
73
+ }).Asserts (u , rbac .ActionUpdate ).Returns ()
103
74
})
104
75
s .Run ("SoftDeleteUserByID" , func () {
105
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
106
- u := dbgen .User (t , db , database.User {})
107
- return methodCase (values (u .ID ), asserts (u , rbac .ActionDelete ), values ())
108
- })
76
+ u := dbgen .User (s .T (), s .DB , database.User {})
77
+ s .Args (u .ID ).Asserts (u , rbac .ActionDelete ).Returns ()
109
78
})
110
79
s .Run ("UpdateUserDeletedByID" , func () {
111
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
112
- u := dbgen .User (t , db , database.User {Deleted : true })
113
- return methodCase (values (database.UpdateUserDeletedByIDParams {
114
- ID : u .ID ,
115
- Deleted : true ,
116
- }), asserts (u , rbac .ActionDelete ), values ())
117
- })
80
+ u := dbgen .User (s .T (), s .DB , database.User {Deleted : true })
81
+ s .Args (database.UpdateUserDeletedByIDParams {
82
+ ID : u .ID ,
83
+ Deleted : true ,
84
+ }).Asserts (u , rbac .ActionDelete ).Returns ()
118
85
})
119
86
s .Run ("UpdateUserHashedPassword" , func () {
120
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
121
- u := dbgen .User (t , db , database.User {})
122
- return methodCase (values (database.UpdateUserHashedPasswordParams {
123
- ID : u .ID ,
124
- }), asserts (u .UserDataRBACObject (), rbac .ActionUpdate ), values ())
125
- })
87
+ u := dbgen .User (s .T (), s .DB , database.User {})
88
+ s .Args (database.UpdateUserHashedPasswordParams {
89
+ ID : u .ID ,
90
+ }).Asserts (u .UserDataRBACObject (), rbac .ActionUpdate ).Returns ()
126
91
})
127
92
s .Run ("UpdateUserLastSeenAt" , func () {
128
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
129
- u := dbgen .User (t , db , database.User {})
130
- return methodCase (values (database.UpdateUserLastSeenAtParams {
131
- ID : u .ID ,
132
- UpdatedAt : u .UpdatedAt ,
133
- LastSeenAt : u .LastSeenAt ,
134
- }), asserts (u , rbac .ActionUpdate ), values (u ))
135
- })
93
+ u := dbgen .User (s .T (), s .DB , database.User {})
94
+ s .Args (database.UpdateUserLastSeenAtParams {
95
+ ID : u .ID ,
96
+ UpdatedAt : u .UpdatedAt ,
97
+ LastSeenAt : u .LastSeenAt ,
98
+ }).Asserts (u , rbac .ActionUpdate ).Returns ()
136
99
})
137
100
s .Run ("UpdateUserProfile" , func () {
138
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
139
- u := dbgen .User (t , db , database.User {})
140
- return methodCase (values (database.UpdateUserProfileParams {
141
- ID : u .ID ,
142
- Email : u .Email ,
143
- Username : u .Username ,
144
- UpdatedAt : u .UpdatedAt ,
145
- }), asserts (u .UserDataRBACObject (), rbac .ActionUpdate ), values (u ))
146
- })
101
+ u := dbgen .User (s .T (), s .DB , database.User {})
102
+ s .Args (database.UpdateUserProfileParams {
103
+ ID : u .ID ,
104
+ Email : u .Email ,
105
+ Username : u .Username ,
106
+ UpdatedAt : u .UpdatedAt ,
107
+ }).Asserts (u .UserDataRBACObject (), rbac .ActionUpdate ).Returns (u )
147
108
})
148
109
s .Run ("UpdateUserStatus" , func () {
149
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
150
- u := dbgen .User (t , db , database.User {})
151
- return methodCase (values (database.UpdateUserStatusParams {
152
- ID : u .ID ,
153
- Status : u .Status ,
154
- UpdatedAt : u .UpdatedAt ,
155
- }), asserts (u , rbac .ActionUpdate ), values (u ))
156
- })
110
+ u := dbgen .User (s .T (), s .DB , database.User {})
111
+ s .Args (database.UpdateUserStatusParams {
112
+ ID : u .ID ,
113
+ Status : u .Status ,
114
+ UpdatedAt : u .UpdatedAt ,
115
+ }).Asserts (u , rbac .ActionUpdate ).Returns (u )
157
116
})
158
117
s .Run ("DeleteGitSSHKey" , func () {
159
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
160
- key := dbgen .GitSSHKey (t , db , database.GitSSHKey {})
161
- return methodCase (values (key .UserID ), asserts (key , rbac .ActionDelete ), values ())
162
- })
118
+ key := dbgen .GitSSHKey (s .T (), s .DB , database.GitSSHKey {})
119
+ s .Args (key .UserID ).Asserts (key , rbac .ActionDelete ).Returns ()
163
120
})
164
121
s .Run ("GetGitSSHKey" , func () {
165
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
166
- key := dbgen .GitSSHKey (t , db , database.GitSSHKey {})
167
- return methodCase (values (key .UserID ), asserts (key , rbac .ActionRead ), values (key ))
168
- })
122
+ key := dbgen .GitSSHKey (s .T (), s .DB , database.GitSSHKey {})
123
+ s .Args (key .UserID ).Asserts (key , rbac .ActionRead ).Returns (key )
169
124
})
170
125
s .Run ("InsertGitSSHKey" , func () {
171
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
172
- u := dbgen .User (t , db , database.User {})
173
- return methodCase (values (database.InsertGitSSHKeyParams {
174
- UserID : u .ID ,
175
- }), asserts (rbac .ResourceUserData .WithID (u .ID ).WithOwner (u .ID .String ()), rbac .ActionCreate ), nil )
176
- })
126
+ u := dbgen .User (s .T (), s .DB , database.User {})
127
+ s .Args (database.InsertGitSSHKeyParams {
128
+ UserID : u .ID ,
129
+ }).Asserts (rbac .ResourceUserData .WithID (u .ID ).WithOwner (u .ID .String ()), rbac .ActionCreate ).Returns (nil )
177
130
})
178
131
s .Run ("UpdateGitSSHKey" , func () {
179
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
180
- key := dbgen .GitSSHKey (t , db , database.GitSSHKey {})
181
- return methodCase (values (database.UpdateGitSSHKeyParams {
182
- UserID : key .UserID ,
183
- UpdatedAt : key .UpdatedAt ,
184
- }), asserts (key , rbac .ActionUpdate ), values (key ))
185
- })
132
+ key := dbgen .GitSSHKey (s .T (), s .DB , database.GitSSHKey {})
133
+ s .Args (database.UpdateGitSSHKeyParams {
134
+ UserID : key .UserID ,
135
+ UpdatedAt : key .UpdatedAt ,
136
+ }).Asserts (key , rbac .ActionUpdate ).Returns (key )
186
137
})
187
138
s .Run ("GetGitAuthLink" , func () {
188
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
189
- link := dbgen .GitAuthLink (t , db , database.GitAuthLink {})
190
- return methodCase (values (database.GetGitAuthLinkParams {
191
- ProviderID : link .ProviderID ,
192
- UserID : link .UserID ,
193
- }), asserts (link , rbac .ActionRead ), values (link ))
194
- })
139
+ link := dbgen .GitAuthLink (s .T (), s .DB , database.GitAuthLink {})
140
+ s .Args (database.GetGitAuthLinkParams {
141
+ ProviderID : link .ProviderID ,
142
+ UserID : link .UserID ,
143
+ }).Asserts (link , rbac .ActionRead ).Returns (link )
195
144
})
196
145
s .Run ("InsertGitAuthLink" , func () {
197
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
198
- u := dbgen .User (t , db , database.User {})
199
- return methodCase (values (database.InsertGitAuthLinkParams {
200
- ProviderID : uuid .NewString (),
201
- UserID : u .ID ,
202
- }), asserts (rbac .ResourceUserData .WithOwner (u .ID .String ()).WithID (u .ID ), rbac .ActionCreate ), nil )
203
- })
146
+ u := dbgen .User (s .T (), s .DB , database.User {})
147
+ s .Args (database.InsertGitAuthLinkParams {
148
+ ProviderID : uuid .NewString (),
149
+ UserID : u .ID ,
150
+ }).Asserts (rbac .ResourceUserData .WithOwner (u .ID .String ()).WithID (u .ID ), rbac .ActionCreate ).Returns (nil )
204
151
})
205
152
s .Run ("UpdateGitAuthLink" , func () {
206
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
207
- link := dbgen .GitAuthLink (t , db , database.GitAuthLink {})
208
- return methodCase (values (database.UpdateGitAuthLinkParams {
209
- ProviderID : link .ProviderID ,
210
- UserID : link .UserID ,
211
- }), asserts (link , rbac .ActionUpdate ), values ())
212
- })
153
+ link := dbgen .GitAuthLink (s .T (), s .DB , database.GitAuthLink {})
154
+ s .Args (database.UpdateGitAuthLinkParams {
155
+ ProviderID : link .ProviderID ,
156
+ UserID : link .UserID ,
157
+ }).Asserts (link , rbac .ActionUpdate ).Returns ()
213
158
})
214
159
s .Run ("UpdateUserLink" , func () {
215
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
216
- link := dbgen .UserLink (t , db , database.UserLink {})
217
- return methodCase (values (database.UpdateUserLinkParams {
218
- OAuthAccessToken : link .OAuthAccessToken ,
219
- OAuthRefreshToken : link .OAuthRefreshToken ,
220
- OAuthExpiry : link .OAuthExpiry ,
221
- UserID : link .UserID ,
222
- LoginType : link .LoginType ,
223
- }), asserts (link , rbac .ActionUpdate ), values (link ))
224
- })
160
+ link := dbgen .UserLink (s .T (), s .DB , database.UserLink {})
161
+ s .Args (database.UpdateUserLinkParams {
162
+ OAuthAccessToken : link .OAuthAccessToken ,
163
+ OAuthRefreshToken : link .OAuthRefreshToken ,
164
+ OAuthExpiry : link .OAuthExpiry ,
165
+ UserID : link .UserID ,
166
+ LoginType : link .LoginType ,
167
+ }).Asserts (link , rbac .ActionUpdate ).Returns (link )
225
168
})
226
169
s .Run ("UpdateUserRoles" , func () {
227
- s .RunMethodTest (func (t * testing.T , db database.Store ) MethodCase {
228
- u := dbgen .User (t , db , database.User {RBACRoles : []string {rbac .RoleTemplateAdmin ()}})
229
- o := u
230
- o .RBACRoles = []string {rbac .RoleUserAdmin ()}
231
- return methodCase (values (database.UpdateUserRolesParams {
232
- GrantedRoles : []string {rbac .RoleUserAdmin ()},
233
- ID : u .ID ,
234
- }), asserts (
235
- u , rbac .ActionRead ,
236
- rbac .ResourceRoleAssignment , rbac .ActionCreate ,
237
- rbac .ResourceRoleAssignment , rbac .ActionDelete ,
238
- ), values (o ))
239
- })
170
+ u := dbgen .User (s .T (), s .DB , database.User {RBACRoles : []string {rbac .RoleTemplateAdmin ()}})
171
+ o := u
172
+ o .RBACRoles = []string {rbac .RoleUserAdmin ()}
173
+ s .Args (database.UpdateUserRolesParams {
174
+ GrantedRoles : []string {rbac .RoleUserAdmin ()},
175
+ ID : u .ID ,
176
+ }).Asserts (
177
+ u , rbac .ActionRead ,
178
+ rbac .ResourceRoleAssignment , rbac .ActionCreate ,
179
+ rbac .ResourceRoleAssignment , rbac .ActionDelete ,
180
+ ).Returns (o )
240
181
})
241
182
}
0 commit comments