mirror of
https://github.com/go-gitea/gitea.git
synced 2026-10-08 20:43:24 +02:00
1 parent
20ea3e204d
commit
26475404d4
2 files changed
+21
-2
No files matched your search
@@ -112,7 +112,7 @@ func (prInfo *pullRequestViewInfo) prepareMergeBoxFormProps(ctx *context.Context
|
||||
// if this pr can be merged now, then hide the auto merge
|
||||
generalHideAutoMerge := prInfo.MergeBoxData.canMergeNow && allOverridableChecksOk
|
||||
var mergeStyles []any
|
||||
if pull.IsStatusMergeable() {
|
||||
if pull.IsStatusMergeable() || pull.IsEmpty() {
|
||||
mergeStyles = []any{
|
||||
map[string]any{
|
||||
"name": "merge",
|
||||
@@ -176,7 +176,7 @@ func (prInfo *pullRequestViewInfo) prepareMergeBoxFormProps(ctx *context.Context
|
||||
if len(mergeStyles) > 0 {
|
||||
mergeFormProps["mergeStyles"] = mergeStyles
|
||||
prInfo.MergeBoxData.MergeFormProps = mergeFormProps
|
||||
} else if pull.IsStatusMergeable() {
|
||||
} else if pull.IsStatusMergeable() || pull.IsEmpty() {
|
||||
// no merge style was set in repo setting
|
||||
prInfo.MergeBoxData.infoCommitBlockers.AddInfoItem(
|
||||
svg.RenderHTML("octicon-x", 16, "tw-text-red"),
|
||||
|
||||
@@ -17,12 +17,14 @@ import (
|
||||
repo_model "gitea.dev/models/repo"
|
||||
"gitea.dev/models/unittest"
|
||||
"gitea.dev/modules/commitstatus"
|
||||
"gitea.dev/modules/json"
|
||||
"gitea.dev/modules/setting"
|
||||
api "gitea.dev/modules/structs"
|
||||
"gitea.dev/modules/test"
|
||||
"gitea.dev/services/pull"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestPullCreate_CommitStatus(t *testing.T) {
|
||||
@@ -134,6 +136,23 @@ func TestPullCreate_EmptyChangesWithDifferentCommits(t *testing.T) {
|
||||
text := strings.TrimSpace(doc.doc.Find(".merge-section").Text())
|
||||
assert.Contains(t, text, "The changes on this branch are already on the target branch. This will be an empty commit.")
|
||||
assert.Contains(t, text, "This pull request can be merged automatically.")
|
||||
mergeFormProps, exists := doc.doc.Find("#pull-request-merge-form").Attr("data-merge-form-props")
|
||||
require.True(t, exists)
|
||||
var mergeForm struct {
|
||||
EmptyCommit bool `json:"emptyCommit"`
|
||||
CanMergeNow bool `json:"canMergeNow"`
|
||||
MergeStyles []struct {
|
||||
Name string `json:"name"`
|
||||
Allowed bool `json:"allowed"`
|
||||
} `json:"mergeStyles"`
|
||||
}
|
||||
require.NoError(t, json.Unmarshal([]byte(mergeFormProps), &mergeForm))
|
||||
assert.True(t, mergeForm.EmptyCommit)
|
||||
assert.True(t, mergeForm.CanMergeNow)
|
||||
assert.Contains(t, mergeForm.MergeStyles, struct {
|
||||
Name string `json:"name"`
|
||||
Allowed bool `json:"allowed"`
|
||||
}{Name: "merge", Allowed: true})
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user