diff options
author | Ethan Koenig <etk39@cornell.edu> | 2017-07-01 22:03:57 -0400 |
---|---|---|
committer | Lunny Xiao <xiaolunwen@gmail.com> | 2017-07-02 10:03:57 +0800 |
commit | f99489d5c522663cfc14b9b65539966844f3ee6b (patch) | |
tree | 5c0338b278df3fa156d2d45ef7058f492b67b4ac /integrations | |
parent | fea902adc8a6e94646e621a974258417f3d68914 (diff) | |
download | gitea-f99489d5c522663cfc14b9b65539966844f3ee6b.tar.gz gitea-f99489d5c522663cfc14b9b65539966844f3ee6b.zip |
Fix API for branches with slashes (#2096)
Diffstat (limited to 'integrations')
-rw-r--r-- | integrations/api_branch_test.go | 44 | ||||
-rw-r--r-- | integrations/gitea-integration-meta/gitea-repositories/user2/repo1.git/refs/heads/feature/1 | 1 |
2 files changed, 45 insertions, 0 deletions
diff --git a/integrations/api_branch_test.go b/integrations/api_branch_test.go new file mode 100644 index 0000000000..79adfaa4f7 --- /dev/null +++ b/integrations/api_branch_test.go @@ -0,0 +1,44 @@ +// 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" + + api "code.gitea.io/sdk/gitea" + + "github.com/stretchr/testify/assert" +) + +func testAPIGetBranch(t *testing.T, branchName string, exists bool) { + prepareTestEnv(t) + + session := loginUser(t, "user2") + req := NewRequestf(t, "GET", "/api/v1/repos/user2/repo1/branches/%s", branchName) + resp := session.MakeRequest(t, req) + if !exists { + assert.EqualValues(t, http.StatusNotFound, resp.HeaderCode) + return + } + assert.EqualValues(t, http.StatusOK, resp.HeaderCode) + var branch api.Branch + DecodeJSON(t, resp, &branch) + assert.EqualValues(t, branchName, branch.Name) +} + +func TestAPIGetBranch(t *testing.T) { + for _, test := range []struct { + BranchName string + Exists bool + }{ + {"master", true}, + {"master/doesnotexist", false}, + {"feature/1", true}, + {"feature/1/doesnotexist", false}, + } { + testAPIGetBranch(t, test.BranchName, test.Exists) + } +} diff --git a/integrations/gitea-integration-meta/gitea-repositories/user2/repo1.git/refs/heads/feature/1 b/integrations/gitea-integration-meta/gitea-repositories/user2/repo1.git/refs/heads/feature/1 new file mode 100644 index 0000000000..f98a263be6 --- /dev/null +++ b/integrations/gitea-integration-meta/gitea-repositories/user2/repo1.git/refs/heads/feature/1 @@ -0,0 +1 @@ +65f1bf27bc3bf70f64657658635e66094edbcb4d |