Skip to content

Commit fd0a95e

Browse files
committed
test: Test_expandDefaultMergeMessage
1 parent 1e09302 commit fd0a95e

File tree

2 files changed

+68
-1
lines changed

2 files changed

+68
-1
lines changed

services/pull/merge.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ func expandDefaultMergeMessage(template string, vars map[string]string) (string,
133133
detail := ""
134134
if splits := strings.SplitN(message, "\n", 2); len(splits) == 2 {
135135
message = splits[0]
136-
detail = strings.TrimSpace(detail)
136+
detail = strings.TrimSpace(splits[1])
137137
}
138138
mapping := func(s string) string { return vars[s] }
139139
return os.Expand(message, mapping), os.Expand(detail, mapping)

services/pull/merge_test.go

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// Copyright 2022 The Gitea Authors. All rights reserved.
2+
// SPDX-License-Identifier: MIT
3+
4+
package pull
5+
6+
import (
7+
"testing"
8+
9+
"github.com/stretchr/testify/assert"
10+
)
11+
12+
func Test_expandDefaultMergeMessage(t *testing.T) {
13+
type args struct {
14+
template string
15+
vars map[string]string
16+
}
17+
tests := []struct {
18+
name string
19+
args args
20+
want string
21+
want1 string
22+
}{
23+
{
24+
name: "single line",
25+
args: args{
26+
template: "Merge ${PullRequestTitle}",
27+
vars: map[string]string{
28+
"PullRequestTitle": "PullRequestTitle",
29+
"PullRequestDescription": "Pull\nRequest\nDescription\n",
30+
},
31+
},
32+
want: "Merge PullRequestTitle",
33+
want1: "",
34+
},
35+
{
36+
name: "multiple lines",
37+
args: args{
38+
template: "Merge ${PullRequestTitle}\nDescription:\n\n${PullRequestDescription}\n",
39+
vars: map[string]string{
40+
"PullRequestTitle": "PullRequestTitle",
41+
"PullRequestDescription": "Pull\nRequest\nDescription\n",
42+
},
43+
},
44+
want: "Merge PullRequestTitle",
45+
want1: "Description:\n\nPull\nRequest\nDescription\n",
46+
},
47+
{
48+
name: "leading newlines",
49+
args: args{
50+
template: "\n\n\nMerge ${PullRequestTitle}\n\n\nDescription:\n\n${PullRequestDescription}\n",
51+
vars: map[string]string{
52+
"PullRequestTitle": "PullRequestTitle",
53+
"PullRequestDescription": "Pull\nRequest\nDescription\n",
54+
},
55+
},
56+
want: "Merge PullRequestTitle",
57+
want1: "Description:\n\nPull\nRequest\nDescription\n",
58+
},
59+
}
60+
for _, tt := range tests {
61+
t.Run(tt.name, func(t *testing.T) {
62+
got, got1 := expandDefaultMergeMessage(tt.args.template, tt.args.vars)
63+
assert.Equalf(t, tt.want, got, "expandDefaultMergeMessage(%v, %v)", tt.args.template, tt.args.vars)
64+
assert.Equalf(t, tt.want1, got1, "expandDefaultMergeMessage(%v, %v)", tt.args.template, tt.args.vars)
65+
})
66+
}
67+
}

0 commit comments

Comments
 (0)