File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change @@ -366,3 +366,36 @@ fn test_decline_invitation() {
366
366
let json = anon. show_crate_owners ( "decline_invitation" ) ;
367
367
assert_eq ! ( json. users. len( ) , 1 ) ;
368
368
}
369
+
370
+ #[ test]
371
+ fn inactive_users_dont_get_invitations ( ) {
372
+ use cargo_registry:: models:: NewUser ;
373
+ use std:: borrow:: Cow ;
374
+
375
+ let ( app, _, owner, owner_token) = TestApp :: init ( ) . with_token ( ) ;
376
+ let owner = owner. as_model ( ) ;
377
+
378
+ // An inactive user with gh_id -1 and an active user with a non-negative gh_id both exist
379
+ let invited_gh_login = "user_bar" ;
380
+ let krate_name = "inactive_test" ;
381
+
382
+ app. db ( |conn| {
383
+ NewUser {
384
+ gh_id : -1 ,
385
+ gh_login : invited_gh_login,
386
+ name : None ,
387
+ gh_avatar : None ,
388
+ gh_access_token : Cow :: Borrowed ( "some random token" ) ,
389
+ }
390
+ . create_or_update ( None , conn)
391
+ . unwrap ( ) ;
392
+ CrateBuilder :: new ( krate_name, owner. id ) . expect_build ( conn) ;
393
+ } ) ;
394
+
395
+ let invited_user = app. db_new_user ( invited_gh_login) ;
396
+
397
+ owner_token. add_user_owner ( krate_name, invited_user. as_model ( ) ) ;
398
+
399
+ let json = invited_user. list_invitations ( ) ;
400
+ assert_eq ! ( json. crate_owner_invitations. len( ) , 1 ) ;
401
+ }
You can’t perform that action at this time.
0 commit comments