bug fixed for API to get user's repos (#1622)
* bug fixed for API to get user's repos * add tests and fix another place * test user2 since user1 has no repos
This commit is contained in:
		
							parent
							
								
									cebe3a6b2f
								
							
						
					
					
						commit
						61b08b5c01
					
				
					 2 changed files with 30 additions and 4 deletions
				
			
		
							
								
								
									
										23
									
								
								integrations/api_repo_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								integrations/api_repo_test.go
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| // Copyright 2017 The Gitea Authors. All rights reserved.
 | ||||
| // Use of this source code is governed by a MIT-style
 | ||||
| // license that can be found in the LICENSE file.
 | ||||
| 
 | ||||
| package integrations | ||||
| 
 | ||||
| import ( | ||||
| 	"net/http" | ||||
| 	"testing" | ||||
| 
 | ||||
| 	"code.gitea.io/gitea/models" | ||||
| 
 | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
| 
 | ||||
| func TestAPIUserReposNotLogin(t *testing.T) { | ||||
| 	assert.NoError(t, models.LoadFixtures()) | ||||
| 
 | ||||
| 	req, err := http.NewRequest("GET", "/api/v1/users/user2/repos", nil) | ||||
| 	assert.NoError(t, err) | ||||
| 	resp := MakeRequest(req) | ||||
| 	assert.EqualValues(t, http.StatusOK, resp.HeaderCode) | ||||
| } | ||||
|  | @ -9,15 +9,18 @@ import ( | |||
| // listUserRepos - List the repositories owned by the given user.
 | ||||
| func listUserRepos(ctx *context.APIContext, u *models.User) { | ||||
| 	userID := u.ID | ||||
| 	showPrivateRepos := (ctx.User.ID == userID || ctx.User.IsAdmin) && ctx.IsSigned | ||||
| 	showPrivateRepos := ctx.IsSigned && (ctx.User.ID == userID || ctx.User.IsAdmin) | ||||
| 	ownRepos, err := models.GetUserRepositories(userID, showPrivateRepos, 1, u.NumRepos, "") | ||||
| 	if err != nil { | ||||
| 		ctx.Error(500, "GetUserRepositories", err) | ||||
| 		return | ||||
| 	} | ||||
| 	accessibleRepos, err := getAccessibleRepos(ctx) | ||||
| 	if err != nil { | ||||
| 		ctx.Error(500, "GetAccessibleRepos", err) | ||||
| 	var accessibleRepos []*api.Repository | ||||
| 	if ctx.User != nil { | ||||
| 		accessibleRepos, err = getAccessibleRepos(ctx) | ||||
| 		if err != nil { | ||||
| 			ctx.Error(500, "GetAccessibleRepos", err) | ||||
| 		} | ||||
| 	} | ||||
| 	apiRepos := make([]*api.Repository, len(ownRepos)+len(accessibleRepos)) | ||||
| 	// Set owned repositories.
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue