summaryrefslogtreecommitdiffstats
path: root/modules/repository/branch_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/repository/branch_test.go')
-rw-r--r--modules/repository/branch_test.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/modules/repository/branch_test.go b/modules/repository/branch_test.go
new file mode 100644
index 0000000..b98618a
--- /dev/null
+++ b/modules/repository/branch_test.go
@@ -0,0 +1,32 @@
+// Copyright 2024 The Gitea Authors. All rights reserved.
+// SPDX-License-Identifier: MIT
+
+package repository
+
+import (
+ "testing"
+
+ "code.gitea.io/gitea/models/db"
+ git_model "code.gitea.io/gitea/models/git"
+ repo_model "code.gitea.io/gitea/models/repo"
+ "code.gitea.io/gitea/models/unittest"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+)
+
+func TestSyncRepoBranches(t *testing.T) {
+ require.NoError(t, unittest.PrepareTestDatabase())
+ _, err := db.GetEngine(db.DefaultContext).ID(1).Update(&repo_model.Repository{ObjectFormatName: "bad-fmt"})
+ require.NoError(t, db.TruncateBeans(db.DefaultContext, &git_model.Branch{}))
+ require.NoError(t, err)
+ repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
+ assert.Equal(t, "bad-fmt", repo.ObjectFormatName)
+ _, err = SyncRepoBranches(db.DefaultContext, 1, 0)
+ require.NoError(t, err)
+ repo = unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
+ assert.Equal(t, "sha1", repo.ObjectFormatName)
+ branch, err := git_model.GetBranch(db.DefaultContext, 1, "master")
+ require.NoError(t, err)
+ assert.EqualValues(t, "master", branch.Name)
+}