@@ -2258,6 +2258,16 @@ func (s *MethodTestSuite) TestOAuth2ProviderAppSecrets() {
2258
2258
})
2259
2259
check .Args (secret .ID ).Asserts (rbac .ResourceOAuth2ProviderAppSecret ,rbac .ActionRead ).Returns (secret )
2260
2260
}))
2261
+ s .Run ("GetOAuth2ProviderAppSecretByAppIDAndSecret" ,s .Subtest (func (db database.Store ,check * expects ) {
2262
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2263
+ secret := dbgen .OAuth2ProviderAppSecret (s .T (),db , database.OAuth2ProviderAppSecret {
2264
+ AppID :app .ID ,
2265
+ })
2266
+ check .Args (database.GetOAuth2ProviderAppSecretByAppIDAndSecretParams {
2267
+ AppID :app .ID ,
2268
+ HashedSecret :secret .HashedSecret ,
2269
+ }).Asserts (rbac .ResourceOAuth2ProviderAppSecret ,rbac .ActionRead ).Returns (secret )
2270
+ }))
2261
2271
s .Run ("InsertOAuth2ProviderAppSecret" ,s .Subtest (func (db database.Store ,check * expects ) {
2262
2272
app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2263
2273
check .Args (database.InsertOAuth2ProviderAppSecretParams {
@@ -2283,3 +2293,139 @@ func (s *MethodTestSuite) TestOAuth2ProviderAppSecrets() {
2283
2293
check .Args (secret .ID ).Asserts (rbac .ResourceOAuth2ProviderAppSecret ,rbac .ActionDelete )
2284
2294
}))
2285
2295
}
2296
+
2297
+ func (s * MethodTestSuite )TestOAuth2ProviderAppCodes () {
2298
+ s .Run ("GetOAuth2ProviderAppCodeByID" ,s .Subtest (func (db database.Store ,check * expects ) {
2299
+ user := dbgen .User (s .T (),db , database.User {})
2300
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2301
+ code := dbgen .OAuth2ProviderAppCode (s .T (),db , database.OAuth2ProviderAppCode {
2302
+ AppID :app .ID ,
2303
+ UserID :user .ID ,
2304
+ })
2305
+ check .Args (code .ID ).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken ,rbac .ActionRead ).Returns (code )
2306
+ }))
2307
+ s .Run ("GetOAuth2ProviderAppCodeByAppIDAndSecret" ,s .Subtest (func (db database.Store ,check * expects ) {
2308
+ user := dbgen .User (s .T (),db , database.User {})
2309
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2310
+ code := dbgen .OAuth2ProviderAppCode (s .T (),db , database.OAuth2ProviderAppCode {
2311
+ AppID :app .ID ,
2312
+ UserID :user .ID ,
2313
+ })
2314
+ check .Args (database.GetOAuth2ProviderAppCodeByAppIDAndSecretParams {
2315
+ AppID :app .ID ,
2316
+ HashedSecret :code .HashedSecret ,
2317
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken ,rbac .ActionRead ).Returns (code )
2318
+ }))
2319
+ s .Run ("InsertOAuth2ProviderAppCode" ,s .Subtest (func (db database.Store ,check * expects ) {
2320
+ user := dbgen .User (s .T (),db , database.User {})
2321
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2322
+ check .Args (database.InsertOAuth2ProviderAppCodeParams {
2323
+ AppID :app .ID ,
2324
+ UserID :user .ID ,
2325
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionCreate )
2326
+ }))
2327
+ s .Run ("DeleteOAuth2ProviderAppCodeByID" ,s .Subtest (func (db database.Store ,check * expects ) {
2328
+ user := dbgen .User (s .T (),db , database.User {})
2329
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2330
+ code := dbgen .OAuth2ProviderAppCode (s .T (),db , database.OAuth2ProviderAppCode {
2331
+ AppID :app .ID ,
2332
+ UserID :user .ID ,
2333
+ })
2334
+ check .Args (code .ID ).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionDelete )
2335
+ }))
2336
+ s .Run ("DeleteOAuth2ProviderAppCodesByAppAndUserID" ,s .Subtest (func (db database.Store ,check * expects ) {
2337
+ user := dbgen .User (s .T (),db , database.User {})
2338
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2339
+ for i := 0 ;i < 5 ;i ++ {
2340
+ _ = dbgen .OAuth2ProviderAppCode (s .T (),db , database.OAuth2ProviderAppCode {
2341
+ AppID :app .ID ,
2342
+ UserID :user .ID ,
2343
+ })
2344
+ }
2345
+ check .Args (database.DeleteOAuth2ProviderAppCodesByAppAndUserIDParams {
2346
+ AppID :app .ID ,
2347
+ UserID :user .ID ,
2348
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionDelete )
2349
+ }))
2350
+ }
2351
+
2352
+ func (s * MethodTestSuite )TestOAuth2ProviderAppTokens () {
2353
+ s .Run ("GetOAuth2ProviderAppTokenByAppSecretIDAndSecret" ,s .Subtest (func (db database.Store ,check * expects ) {
2354
+ user := dbgen .User (s .T (),db , database.User {})
2355
+ key ,_ := dbgen .APIKey (s .T (),db , database.APIKey {
2356
+ UserID :user .ID ,
2357
+ })
2358
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2359
+ secret := dbgen .OAuth2ProviderAppSecret (s .T (),db , database.OAuth2ProviderAppSecret {
2360
+ AppID :app .ID ,
2361
+ })
2362
+ token := dbgen .OAuth2ProviderAppToken (s .T (),db , database.OAuth2ProviderAppToken {
2363
+ AppSecretID :secret .ID ,
2364
+ APIKeyID :key .ID ,
2365
+ })
2366
+ check .Args (database.GetOAuth2ProviderAppTokenByAppSecretIDAndSecretParams {
2367
+ AppSecretID :secret .ID ,
2368
+ HashedSecret :token .HashedSecret ,
2369
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken ,rbac .ActionRead ).Returns (token )
2370
+ }))
2371
+ s .Run ("GetOAuth2ProviderAppsByUserID" ,s .Subtest (func (db database.Store ,check * expects ) {
2372
+ user := dbgen .User (s .T (),db , database.User {})
2373
+ key ,_ := dbgen .APIKey (s .T (),db , database.APIKey {
2374
+ UserID :user .ID ,
2375
+ })
2376
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2377
+ _ = dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2378
+ secret := dbgen .OAuth2ProviderAppSecret (s .T (),db , database.OAuth2ProviderAppSecret {
2379
+ AppID :app .ID ,
2380
+ })
2381
+ for i := 0 ;i < 5 ;i ++ {
2382
+ _ = dbgen .OAuth2ProviderAppToken (s .T (),db , database.OAuth2ProviderAppToken {
2383
+ AppSecretID :secret .ID ,
2384
+ APIKeyID :key .ID ,
2385
+ })
2386
+ }
2387
+ check .Args (user .ID ).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionRead ).Returns ([]database.GetOAuth2ProviderAppsByUserIDRow {
2388
+ {
2389
+ ID :app .ID ,
2390
+ CallbackURL :app .CallbackURL ,
2391
+ Icon :app .Icon ,
2392
+ Name :app .Name ,
2393
+ TokenCount :5 ,
2394
+ },
2395
+ })
2396
+ }))
2397
+ s .Run ("InsertOAuth2ProviderAppToken" ,s .Subtest (func (db database.Store ,check * expects ) {
2398
+ user := dbgen .User (s .T (),db , database.User {})
2399
+ key ,_ := dbgen .APIKey (s .T (),db , database.APIKey {
2400
+ UserID :user .ID ,
2401
+ })
2402
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2403
+ secret := dbgen .OAuth2ProviderAppSecret (s .T (),db , database.OAuth2ProviderAppSecret {
2404
+ AppID :app .ID ,
2405
+ })
2406
+ check .Args (database.InsertOAuth2ProviderAppTokenParams {
2407
+ AppSecretID :secret .ID ,
2408
+ APIKeyID :key .ID ,
2409
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionCreate )
2410
+ }))
2411
+ s .Run ("DeleteOAuth2ProviderAppTokensByAppAndUserID" ,s .Subtest (func (db database.Store ,check * expects ) {
2412
+ user := dbgen .User (s .T (),db , database.User {})
2413
+ key ,_ := dbgen .APIKey (s .T (),db , database.APIKey {
2414
+ UserID :user .ID ,
2415
+ })
2416
+ app := dbgen .OAuth2ProviderApp (s .T (),db , database.OAuth2ProviderApp {})
2417
+ secret := dbgen .OAuth2ProviderAppSecret (s .T (),db , database.OAuth2ProviderAppSecret {
2418
+ AppID :app .ID ,
2419
+ })
2420
+ for i := 0 ;i < 5 ;i ++ {
2421
+ _ = dbgen .OAuth2ProviderAppToken (s .T (),db , database.OAuth2ProviderAppToken {
2422
+ AppSecretID :secret .ID ,
2423
+ APIKeyID :key .ID ,
2424
+ })
2425
+ }
2426
+ check .Args (database.DeleteOAuth2ProviderAppTokensByAppAndUserIDParams {
2427
+ AppID :app .ID ,
2428
+ UserID :user .ID ,
2429
+ }).Asserts (rbac .ResourceOAuth2ProviderAppCodeToken .WithOwner (user .ID .String ()),rbac .ActionDelete )
2430
+ }))
2431
+ }