fix #1643 and improve integration test (#1645)

tokarchuk/v1.17
Lunny Xiao 8 years ago committed by Bo-Yi Wu
parent 00324cea10
commit 0308d44a16
  1. 9
      integrations/api_repo_test.go
  2. 9
      integrations/repo_test.go
  3. 21
      integrations/user_test.go
  4. 7
      routers/api/v1/repo/repo.go

@ -21,3 +21,12 @@ func TestAPIUserReposNotLogin(t *testing.T) {
resp := MakeRequest(req) resp := MakeRequest(req)
assert.EqualValues(t, http.StatusOK, resp.HeaderCode) assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
} }
func TestAPISearchRepoNotLogin(t *testing.T) {
assert.NoError(t, models.LoadFixtures())
req, err := http.NewRequest("GET", "/api/v1/repos/search?q=Test", nil)
assert.NoError(t, err)
resp := MakeRequest(req)
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
}

@ -19,12 +19,3 @@ func TestViewRepo(t *testing.T) {
resp := MakeRequest(req) resp := MakeRequest(req)
assert.EqualValues(t, http.StatusOK, resp.HeaderCode) assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
} }
func TestViewUser(t *testing.T) {
prepareTestEnv(t)
req, err := http.NewRequest("GET", "/user2", nil)
assert.NoError(t, err)
resp := MakeRequest(req)
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
}

@ -0,0 +1,21 @@
// 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"
"github.com/stretchr/testify/assert"
)
func TestViewUser(t *testing.T) {
prepareTestEnv(t)
req, err := http.NewRequest("GET", "/user2", nil)
assert.NoError(t, err)
resp := MakeRequest(req)
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
}

@ -55,6 +55,11 @@ func Search(ctx *context.APIContext) {
return return
} }
var userID int64
if ctx.IsSigned {
userID = ctx.User.ID
}
results := make([]*api.Repository, len(repos)) results := make([]*api.Repository, len(repos))
for i, repo := range repos { for i, repo := range repos {
if err = repo.GetOwner(); err != nil { if err = repo.GetOwner(); err != nil {
@ -64,7 +69,7 @@ func Search(ctx *context.APIContext) {
}) })
return return
} }
accessMode, err := models.AccessLevel(ctx.User.ID, repo) accessMode, err := models.AccessLevel(userID, repo)
if err != nil { if err != nil {
ctx.JSON(500, map[string]interface{}{ ctx.JSON(500, map[string]interface{}{
"ok": false, "ok": false,

Loading…
Cancel
Save