diff options
Diffstat (limited to 'routers/api/v1/repo/tree_test.go')
-rw-r--r-- | routers/api/v1/repo/tree_test.go | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/routers/api/v1/repo/tree_test.go b/routers/api/v1/repo/tree_test.go new file mode 100644 index 0000000000..708516e979 --- /dev/null +++ b/routers/api/v1/repo/tree_test.go @@ -0,0 +1,48 @@ +// Copyright 2019 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 repo + +import ( + "github.com/stretchr/testify/assert" + "testing" + + "code.gitea.io/gitea/models" + "code.gitea.io/gitea/modules/context" + "code.gitea.io/gitea/modules/test" + "code.gitea.io/sdk/gitea" +) + +func TestGetTreeBySHA(t *testing.T) { + models.PrepareTestEnv(t) + sha := "master" + ctx := test.MockContext(t, "user2/repo1") + ctx.SetParams(":id", "1") + ctx.SetParams(":sha", sha) + test.LoadRepo(t, ctx, 1) + test.LoadRepoCommit(t, ctx) + test.LoadUser(t, ctx, 2) + test.LoadGitRepo(t, ctx) + + tree := GetTreeBySHA(&context.APIContext{Context: ctx, Org: nil}, ctx.Params("sha")) + expectedTree := &gitea.GitTreeResponse{ + SHA: "65f1bf27bc3bf70f64657658635e66094edbcb4d", + URL: "https://try.gitea.io/api/v1/repos/user2/repo1/git/trees/65f1bf27bc3bf70f64657658635e66094edbcb4d", + Entries: []gitea.GitEntry{ + { + Path: "README.md", + Mode: "100644", + Type: "blob", + Size: 30, + SHA: "4b4851ad51df6a7d9f25c979345979eaeb5b349f", + URL: "https://try.gitea.io/api/v1/repos/user2/repo1/git/blobs/4b4851ad51df6a7d9f25c979345979eaeb5b349f", + }, + }, + Truncated: false, + Page: 1, + TotalCount: 1, + } + + assert.EqualValues(t, tree, expectedTree) +} |