mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 14:31:02 +00:00 
			
		
		
		
	Feature - Pagination for git tree API (#5838)
* Feature - Pagination for git tree API * Handles case when page is negative * Does a for loop over the start and end rather than all entries * Removed redundent logic * Adds per_page as a query parameter * Adds DEFAULT_GIT_TREES_PER_PAGE for settings, ran make fmt * Fix typo in cheat-sheet en * Makes page start at 1, generated swagger * Use updates to SDK * Updates to use latest sdk * Updates swagger for tree api * Adds test for GetTreeBySHA * Updates per PR reviews * Updates per PR reviews * Remove file * Formatting * Fix to swagger file * Fix to swagger * Update v1_json.tmpl * Fix to swagger file
This commit is contained in:
		
					parent
					
						
							
								0c840a924a
							
						
					
				
			
			
				commit
				
					
						da1edbfb79
					
				
			
		
					 9 changed files with 145 additions and 31 deletions
				
			
		
							
								
								
									
										48
									
								
								routers/api/v1/repo/tree_test.go
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								routers/api/v1/repo/tree_test.go
									
										
									
									
									
										Normal file
									
								
							|  | @ -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) | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue