@@ -112,6 +112,8 @@ func TestAPIUserSearchNotLoggedInUserHidden(t *testing.T) {
112112
113113func  TestAPIUserSearchByEmail (t  * testing.T ) {
114114	defer  tests .PrepareTestEnv (t )()
115+ 
116+ 	// admin can search user with private email 
115117	adminUsername  :=  "user1" 
116118	session  :=  loginUser (t , adminUsername )
117119	token  :=  getTokenForLoggedInUser (t , session , auth_model .AccessTokenScopeReadUser )
@@ -124,4 +126,22 @@ func TestAPIUserSearchByEmail(t *testing.T) {
124126	DecodeJSON (t , resp , & results )
125127	assert .Equal (t , 1 , len (results .Data ))
126128	assert .Equal (t , query , results .Data [0 ].Email )
129+ 
130+ 	// no login user can not search user with private email 
131+ 	req  =  NewRequestf (t , "GET" , "/api/v1/users/search?q=%s" , query )
132+ 	resp  =  MakeRequest (t , req , http .StatusOK )
133+ 	DecodeJSON (t , resp , & results )
134+ 	assert .Empty (t , results .Data )
135+ 
136+ 	// user can search self with private email 
137+ 	user2  :=  "user2" 
138+ 	session  =  loginUser (t , user2 )
139+ 	token  =  getTokenForLoggedInUser (t , session , auth_model .AccessTokenScopeReadUser )
140+ 	req  =  NewRequestf (t , "GET" , "/api/v1/users/search?q=%s" , query ).
141+ 		AddTokenAuth (token )
142+ 	resp  =  MakeRequest (t , req , http .StatusOK )
143+ 
144+ 	DecodeJSON (t , resp , & results )
145+ 	assert .Equal (t , 1 , len (results .Data ))
146+ 	assert .Equal (t , query , results .Data [0 ].Email )
127147}
0 commit comments