code.gitea.io/gitea@v1.21.7/services/pull/merge_test.go (about) 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 wantBody 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 wantBody: "", 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 wantBody: "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 wantBody: "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.wantBody, got1, "expandDefaultMergeMessage(%v, %v)", tt.args.template, tt.args.vars) 65 }) 66 } 67 }