enhance: allow auto-closing PRs from PRs (#39393)

On GitHub, one can close PRs via `Fixes: #123` references which was not
possible on Gitea before, but now is. Verified fully that behaviour
matches GH and ensured no regressions for external trackers.
This commit is contained in:
silverwind authored and GitHub committed 2026-09-25 11:35:13 +00:00
1 parent 455f30a7b6
commit 6d59229331
5 files changed
+42 -8

No files matched your search

+9 -2
View File
@@ -42,7 +42,7 @@ func TestUpdateIssuesCommit(t *testing.T) {
CommitterName: "User Two",
AuthorEmail: "user2@example.com",
AuthorName: "User Two",
Message: "close #2",
Message: "close #2, reopen #2",
},
}
@@ -56,7 +56,7 @@ func TestUpdateIssuesCommit(t *testing.T) {
PosterID: user.ID,
IssueID: 1,
}
issueBean := &issues_model.Issue{RepoID: repo.ID, Index: 4}
issueBean := &issues_model.Issue{RepoID: repo.ID, Index: 2}
unittest.AssertNotExistsBean(t, commentBean)
unittest.AssertNotExistsBean(t, &issues_model.Issue{RepoID: repo.ID, Index: 2}, "is_closed=1")
@@ -117,6 +117,13 @@ func TestUpdateIssuesCommit(t *testing.T) {
unittest.AssertExistsAndLoadBean(t, commentBean)
unittest.AssertExistsAndLoadBean(t, issueBean, "is_closed=1")
unittest.CheckConsistencyFor(t, &activities_model.Action{})
repo = unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 48})
admin := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1})
assert.NoError(t, UpdateIssuesCommit(t.Context(), admin, repo, []*repository.PushCommit{{Sha1: "abcdef4", Message: "close #1"}}, repo.DefaultBranch))
unittest.AssertExistsAndLoadBean(t, &issues_model.Issue{RepoID: repo.ID, Index: 1}, "is_closed=0")
assert.NoError(t, UpdateIssuesCommit(t.Context(), admin, repo, []*repository.PushCommit{{Sha1: "abcdef5", Message: "close !1"}}, repo.DefaultBranch))
unittest.AssertExistsAndLoadBean(t, &issues_model.Issue{RepoID: repo.ID, Index: 1}, "is_closed=1")
}
func TestUpdateIssuesCommit_Colon(t *testing.T) {