mirror of
https://github.com/go-gitea/gitea.git
synced 2026-08-05 09:00:07 +00:00
4d6e172a0d
Unfortunately, we can't completely remove the ctx from git.Repository, because the CatFileBatch still heavily depends on a parent context. If we remove the Repository ctx, the CatFileBatch will become a mess and create a lot of unnecessary git processes. http://localhost:3000/-/admin/monitor/perftrace * Before: open a repo home, dozens of git processes (duplicate cat-file) * After: only a few (no duplicate cat-file)
32 lines
982 B
Go
32 lines
982 B
Go
// Copyright 2018 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package repo
|
|
|
|
import (
|
|
"testing"
|
|
|
|
repo_model "gitea.dev/models/repo"
|
|
"gitea.dev/models/unittest"
|
|
"gitea.dev/modules/git"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestEditorUtils(t *testing.T) {
|
|
unittest.PrepareTestEnv(t)
|
|
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
|
|
t.Run("getUniquePatchBranchName", func(t *testing.T) {
|
|
branchName := getUniquePatchBranchName(t.Context(), "user2", repo)
|
|
assert.Equal(t, "user2-patch-1", branchName)
|
|
})
|
|
t.Run("getClosestParentWithFiles", func(t *testing.T) {
|
|
gitRepo, _ := git.OpenRepository(t.Context(), repo)
|
|
defer gitRepo.Close()
|
|
treePath := getClosestParentWithFiles(t.Context(), gitRepo, "sub-home-md-img-check", "docs/foo/bar")
|
|
assert.Equal(t, "docs", treePath)
|
|
treePath = getClosestParentWithFiles(t.Context(), gitRepo, "sub-home-md-img-check", "any/other")
|
|
assert.Empty(t, treePath)
|
|
})
|
|
}
|