You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

merge_test.go 1.8KB

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