aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Song <i@wolfogre.com>2024-08-07 23:29:08 +0800
committerGitHub <noreply@github.com>2024-08-07 11:29:08 -0400
commitde2787a4939ffdc11184a2115289cfb097272ba2 (patch)
tree876be0ef88ac3671f518879ea28baafb499099da
parentdf7f1c2eadac24f64adf3d823a7642a6eccf77f3 (diff)
downloadgitea-de2787a4939ffdc11184a2115289cfb097272ba2.tar.gz
gitea-de2787a4939ffdc11184a2115289cfb097272ba2.zip
Add `TAGS` to `TEST_TAGS` and fix bugs found with gogit (#31791)
Found at https://github.com/go-gitea/gitea/pull/31790#issuecomment-2272898915 `unit-tests-gogit` never work since the workflow set `TAGS` with `gogit`, but the Makefile use `TEST_TAGS`. This PR adds the values of `TAGS` to `TEST_TAGS`, ensuring that setting `TAGS` is always acceptable and avoiding confusion about which one should be set.
-rw-r--r--Makefile2
-rw-r--r--modules/git/blame_sha256_test.go5
-rw-r--r--modules/git/repo_tree_gogit.go11
3 files changed, 16 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 378de6e8f4..0f72f97673 100644
--- a/Makefile
+++ b/Makefile
@@ -137,7 +137,7 @@ TAGS ?=
TAGS_SPLIT := $(subst $(COMMA), ,$(TAGS))
TAGS_EVIDENCE := $(MAKE_EVIDENCE_DIR)/tags
-TEST_TAGS ?= sqlite sqlite_unlock_notify
+TEST_TAGS ?= $(TAGS_SPLIT) sqlite sqlite_unlock_notify
TAR_EXCLUDES := .git data indexers queues log node_modules $(EXECUTABLE) $(FOMANTIC_WORK_DIR)/node_modules $(DIST) $(MAKE_EVIDENCE_DIR) $(AIR_TMP_DIR) $(GO_LICENSE_TMP_DIR)
diff --git a/modules/git/blame_sha256_test.go b/modules/git/blame_sha256_test.go
index 8cd345714f..da451f22fc 100644
--- a/modules/git/blame_sha256_test.go
+++ b/modules/git/blame_sha256_test.go
@@ -14,6 +14,11 @@ func TestReadingBlameOutputSha256(t *testing.T) {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
+ if isGogit {
+ t.Skip("Skipping test since gogit does not support sha256")
+ return
+ }
+
t.Run("Without .git-blame-ignore-revs", func(t *testing.T) {
repo, err := OpenRepository(ctx, "./tests/repos/repo5_pulls_sha256")
assert.NoError(t, err)
diff --git a/modules/git/repo_tree_gogit.go b/modules/git/repo_tree_gogit.go
index dc97ce1344..651794a5aa 100644
--- a/modules/git/repo_tree_gogit.go
+++ b/modules/git/repo_tree_gogit.go
@@ -6,11 +6,20 @@
package git
-import "github.com/go-git/go-git/v5/plumbing"
+import (
+ "errors"
+
+ "github.com/go-git/go-git/v5/plumbing"
+)
func (repo *Repository) getTree(id ObjectID) (*Tree, error) {
gogitTree, err := repo.gogitRepo.TreeObject(plumbing.Hash(id.RawValue()))
if err != nil {
+ if errors.Is(err, plumbing.ErrObjectNotFound) {
+ return nil, ErrNotExist{
+ ID: id.String(),
+ }
+ }
return nil, err
}