mirror of
https://github.com/go-gitea/gitea.git
synced 2026-08-03 18:24:29 +00:00
refactor: decouple git.Repository(ctx) from git.Commit & git.Tree (#38464)
1. Storing "ctx" in a long-living object is wrong 2. Make the commit & tree cacheable (for the future performance optimization) 3. Also fix some bad designs like `// FIXME: bad design, this field can be nil if the commit is from "last commit cache"` ref: * #33893
This commit is contained in:
@@ -174,7 +174,7 @@ func TestRepository_AddWikiPage(t *testing.T) {
|
||||
masterTree, err := gitRepo.GetTree(repo.DefaultWikiBranch)
|
||||
assert.NoError(t, err)
|
||||
gitPath := WebPathToGitPath(webPath)
|
||||
entry, err := masterTree.GetTreeEntryByPath(gitPath)
|
||||
entry, err := masterTree.GetTreeEntryByPath(t.Context(), gitRepo, gitPath)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, gitPath, entry.Name(), "%s not added correctly", userTitle)
|
||||
})
|
||||
@@ -219,12 +219,12 @@ func TestRepository_EditWikiPage(t *testing.T) {
|
||||
masterTree, err := gitRepo.GetTree(repo.DefaultWikiBranch)
|
||||
assert.NoError(t, err)
|
||||
gitPath := WebPathToGitPath(webPath)
|
||||
entry, err := masterTree.GetTreeEntryByPath(gitPath)
|
||||
entry, err := masterTree.GetTreeEntryByPath(t.Context(), gitRepo, gitPath)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, gitPath, entry.Name(), "%s not edited correctly", newWikiName)
|
||||
|
||||
if newWikiName != "Home" {
|
||||
_, err := masterTree.GetTreeEntryByPath("Home.md")
|
||||
_, err := masterTree.GetTreeEntryByPath(t.Context(), gitRepo, "Home.md")
|
||||
assert.Error(t, err)
|
||||
}
|
||||
gitRepo.Close()
|
||||
@@ -245,7 +245,7 @@ func TestRepository_DeleteWikiPage(t *testing.T) {
|
||||
masterTree, err := gitRepo.GetTree(repo.DefaultWikiBranch)
|
||||
assert.NoError(t, err)
|
||||
gitPath := WebPathToGitPath("Home")
|
||||
_, err = masterTree.GetTreeEntryByPath(gitPath)
|
||||
_, err = masterTree.GetTreeEntryByPath(t.Context(), gitRepo, gitPath)
|
||||
assert.Error(t, err)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user