@@ -11,6 +11,7 @@ import (
1111 "testing"
1212
1313 "code.gitea.io/gitea/models/organization"
14+ "code.gitea.io/gitea/models/repo"
1415 "code.gitea.io/gitea/models/unit"
1516 "code.gitea.io/gitea/models/unittest"
1617 user_model "code.gitea.io/gitea/models/user"
@@ -239,3 +240,26 @@ func TestAPITeamSearch(t *testing.T) {
239240 req = NewRequestf (t , "GET" , "/api/v1/orgs/%s/teams/search?q=%s&token=%s" , org .Name , "team" , token5 )
240241 MakeRequest (t , req , http .StatusForbidden )
241242}
243+
244+ func TestAPIGetTeamRepo (t * testing.T ) {
245+ defer prepareTestEnv (t )()
246+
247+ user := unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 15 }).(* user_model.User )
248+ teamRepo := unittest .AssertExistsAndLoadBean (t , & repo.Repository {ID : 24 }).(* repo.Repository )
249+ team := unittest .AssertExistsAndLoadBean (t , & organization.Team {ID : 5 }).(* organization.Team )
250+
251+ var results api.Repository
252+
253+ token := getUserToken (t , user .Name )
254+ req := NewRequestf (t , "GET" , "/api/v1/teams/%d/repos/%s/?token=%s" , team .ID , teamRepo .FullName (), token )
255+ resp := MakeRequest (t , req , http .StatusOK )
256+ DecodeJSON (t , resp , & results )
257+ assert .Equal (t , "big_test_private_4" , teamRepo .Name )
258+
259+ // no access if not organization member
260+ user5 := unittest .AssertExistsAndLoadBean (t , & user_model.User {ID : 5 }).(* user_model.User )
261+ token5 := getUserToken (t , user5 .Name )
262+
263+ req = NewRequestf (t , "GET" , "/api/v1/teams/%d/repos/%s/?token=%s" , team .ID , teamRepo .FullName (), token5 )
264+ MakeRequest (t , req , http .StatusNotFound )
265+ }
0 commit comments