mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 14:31:02 +00:00 
			
		
		
		
	- `RemoveFilesFromIndex` used an hardcoded empty commit ID for the SHA1 object format, this would result in an error if the repository was initialized to use the sha256 object format. Get the object format of the Git repository and use that to get the empty commit id. - Adds unit test. - Resolves #3184
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			799 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			799 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2024 The Forgejo Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package files
 | |
| 
 | |
| import (
 | |
| 	"testing"
 | |
| 
 | |
| 	"code.gitea.io/gitea/models/db"
 | |
| 	repo_model "code.gitea.io/gitea/models/repo"
 | |
| 	"code.gitea.io/gitea/models/unittest"
 | |
| 	"code.gitea.io/gitea/modules/git"
 | |
| 
 | |
| 	"github.com/stretchr/testify/assert"
 | |
| )
 | |
| 
 | |
| func TestRemoveFilesFromIndexSha256(t *testing.T) {
 | |
| 	if git.CheckGitVersionAtLeast("2.42") != nil {
 | |
| 		t.Skip("skipping because installed Git version doesn't support SHA256")
 | |
| 	}
 | |
| 	unittest.PrepareTestEnv(t)
 | |
| 	repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
 | |
| 
 | |
| 	temp, err := NewTemporaryUploadRepository(db.DefaultContext, repo)
 | |
| 	assert.NoError(t, err)
 | |
| 	assert.NoError(t, temp.Init("sha256"))
 | |
| 	assert.NoError(t, temp.RemoveFilesFromIndex("README.md"))
 | |
| }
 |