summaryrefslogtreecommitdiffstats
path: root/services/pull/merge_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'services/pull/merge_test.go')
-rw-r--r--services/pull/merge_test.go67
1 files changed, 67 insertions, 0 deletions
diff --git a/services/pull/merge_test.go b/services/pull/merge_test.go
new file mode 100644
index 0000000..6df6f55
--- /dev/null
+++ b/services/pull/merge_test.go
@@ -0,0 +1,67 @@
+// Copyright 2022 The Gitea Authors. All rights reserved.
+// SPDX-License-Identifier: MIT
+
+package pull
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+)
+
+func Test_expandDefaultMergeMessage(t *testing.T) {
+ type args struct {
+ template string
+ vars map[string]string
+ }
+ tests := []struct {
+ name string
+ args args
+ want string
+ wantBody string
+ }{
+ {
+ name: "single line",
+ args: args{
+ template: "Merge ${PullRequestTitle}",
+ vars: map[string]string{
+ "PullRequestTitle": "PullRequestTitle",
+ "PullRequestDescription": "Pull\nRequest\nDescription\n",
+ },
+ },
+ want: "Merge PullRequestTitle",
+ wantBody: "",
+ },
+ {
+ name: "multiple lines",
+ args: args{
+ template: "Merge ${PullRequestTitle}\nDescription:\n\n${PullRequestDescription}\n",
+ vars: map[string]string{
+ "PullRequestTitle": "PullRequestTitle",
+ "PullRequestDescription": "Pull\nRequest\nDescription\n",
+ },
+ },
+ want: "Merge PullRequestTitle",
+ wantBody: "Description:\n\nPull\nRequest\nDescription\n",
+ },
+ {
+ name: "leading newlines",
+ args: args{
+ template: "\n\n\nMerge ${PullRequestTitle}\n\n\nDescription:\n\n${PullRequestDescription}\n",
+ vars: map[string]string{
+ "PullRequestTitle": "PullRequestTitle",
+ "PullRequestDescription": "Pull\nRequest\nDescription\n",
+ },
+ },
+ want: "Merge PullRequestTitle",
+ wantBody: "Description:\n\nPull\nRequest\nDescription\n",
+ },
+ }
+ for _, tt := range tests {
+ t.Run(tt.name, func(t *testing.T) {
+ got, got1 := expandDefaultMergeMessage(tt.args.template, tt.args.vars)
+ assert.Equalf(t, tt.want, got, "expandDefaultMergeMessage(%v, %v)", tt.args.template, tt.args.vars)
+ assert.Equalf(t, tt.wantBody, got1, "expandDefaultMergeMessage(%v, %v)", tt.args.template, tt.args.vars)
+ })
+ }
+}