2019-02-06 11:19:26 -07:00
// 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.
2021-11-24 15:56:24 +08:00
package files
2019-02-06 11:19:26 -07:00
import (
"testing"
2021-11-12 22:36:47 +08:00
"code.gitea.io/gitea/models/unittest"
2019-05-11 18:21:34 +08:00
api "code.gitea.io/gitea/modules/structs"
2019-02-06 11:19:26 -07:00
"code.gitea.io/gitea/modules/test"
2019-04-17 10:06:35 -06:00
"github.com/stretchr/testify/assert"
2019-02-06 11:19:26 -07:00
)
func TestGetTreeBySHA ( t * testing . T ) {
2021-11-12 22:36:47 +08:00
unittest . PrepareTestEnv ( t )
2019-02-06 11:19:26 -07:00
ctx := test . MockContext ( t , "user2/repo1" )
test . LoadRepo ( t , ctx , 1 )
test . LoadRepoCommit ( t , ctx )
test . LoadUser ( t , ctx , 2 )
test . LoadGitRepo ( t , ctx )
2019-11-13 07:01:19 +00:00
defer ctx . Repo . GitRepo . Close ( )
2019-04-17 10:06:35 -06:00
sha := ctx . Repo . Repository . DefaultBranch
page := 1
perPage := 10
ctx . SetParams ( ":id" , "1" )
ctx . SetParams ( ":sha" , sha )
2019-02-06 11:19:26 -07:00
2022-01-19 23:26:57 +00:00
tree , err := GetTreeBySHA ( ctx , ctx . Repo . Repository , ctx . Repo . GitRepo , ctx . Params ( ":sha" ) , page , perPage , true )
2020-07-19 05:53:40 -04:00
assert . NoError ( t , err )
2019-04-17 10:06:35 -06:00
expectedTree := & api . GitTreeResponse {
2019-02-06 11:19:26 -07:00
SHA : "65f1bf27bc3bf70f64657658635e66094edbcb4d" ,
URL : "https://try.gitea.io/api/v1/repos/user2/repo1/git/trees/65f1bf27bc3bf70f64657658635e66094edbcb4d" ,
2019-04-17 10:06:35 -06:00
Entries : [ ] api . GitEntry {
2019-02-06 11:19:26 -07:00
{
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 ,
}
2019-04-19 14:17:27 +02:00
assert . EqualValues ( t , expectedTree , tree )
2019-02-06 11:19:26 -07:00
}