@@ -402,7 +402,14 @@ def test_correct_view_permissions(self):
402
402
class TestUserSearchView (AdminTestCase ):
403
403
404
404
def setUp (self ):
405
- self .user_1 = AuthUserFactory (fullname = 'Broken Matt Hardy' )
405
+ self .user_1 = AuthUserFactory (
406
+ fullname = 'Broken Matt Hardy' ,
407
+ external_identity = {
408
+ settings .EXTERNAL_IDENTITY_PROFILE .get ('OrcidProfile' ): {
409
+ '1234-5678' : 'VERIFIED'
410
+ }
411
+ }
412
+ )
406
413
self .user_2 = AuthUserFactory (fullname = 'Jeff Hardy' )
407
414
self .user_3 = AuthUserFactory (fullname = 'Reby Sky' )
408
415
self .user_4 = AuthUserFactory (fullname = 'King Maxel Hardy' )
@@ -425,6 +432,14 @@ def test_search_user_by_guid(self):
425
432
assert response .status_code == 302
426
433
assert response .headers ['location' ] == f'/users/{ self .user_1 .guids .first ()._id } /'
427
434
435
+ form_data = {
436
+ 'guid' : 'wrong'
437
+ }
438
+ form = UserSearchForm (data = form_data )
439
+ assert form .is_valid ()
440
+ response = self .view .form_valid (form )
441
+ assert response .status_code == 404
442
+
428
443
def test_search_user_by_name (self ):
429
444
form_data = {
430
445
'name' : 'Hardy'
@@ -455,6 +470,14 @@ def test_search_user_by_username(self):
455
470
assert response .status_code == 302
456
471
assert response .headers ['location' ] == f'/users/{ self .user_1 .guids .first ()._id } /'
457
472
473
+ form_data = {
474
+
475
+ }
476
+ form = UserSearchForm (data = form_data )
477
+ assert form .is_valid ()
478
+ response = self .view .form_valid (form )
479
+ assert response .status_code == 404
480
+
458
481
def test_search_user_by_alternate_email (self ):
459
482
form_data = {
460
483
'email' : self .user_2_alternate_email
@@ -487,6 +510,24 @@ def test_search_user_list_case_insensitive(self):
487
510
for user in results :
488
511
assert 'Hardy' in user .fullname
489
512
513
+ def test_search_user_by_orcid (self ):
514
+ form_data = {
515
+ 'orcid' : '1234-5678'
516
+ }
517
+ form = UserSearchForm (data = form_data )
518
+ assert form .is_valid ()
519
+ response = self .view .form_valid (form )
520
+ assert response .status_code == 302
521
+ assert response .headers ['location' ] == f'/users/{ self .user_1 .guids .first ()._id } /'
522
+
523
+ form_data = {
524
+ 'orcid' : '1234-5678-90'
525
+ }
526
+ form = UserSearchForm (data = form_data )
527
+ assert form .is_valid ()
528
+ response = self .view .form_valid (form )
529
+ assert response .status_code == 404
530
+
490
531
491
532
class TestGetLinkView (AdminTestCase ):
492
533
0 commit comments