1
1
package changelog
2
2
3
3
import (
4
+ "fmt"
4
5
"testing"
5
6
6
7
"github.com/stretchr/testify/assert"
@@ -14,6 +15,7 @@ func TestFuckingChangelog(t *testing.T) {
14
15
pullRequest pullRequest
15
16
itemTemplate string
16
17
expected string
18
+ expectedErr error
17
19
}{
18
20
{
19
21
`## [Unreleased]
@@ -29,6 +31,7 @@ func TestFuckingChangelog(t *testing.T) {
29
31
* [PR-87](https://example.com/pr/87)
30
32
Test
31
33
` ,
34
+ nil ,
32
35
},
33
36
34
37
{
@@ -49,6 +52,7 @@ func TestFuckingChangelog(t *testing.T) {
49
52
50
53
[Unreleased]: https://example.com/
51
54
` ,
55
+ nil ,
52
56
},
53
57
54
58
{
@@ -70,6 +74,7 @@ func TestFuckingChangelog(t *testing.T) {
70
74
* [PR-42](https://example.com/pr/42)
71
75
Added the meaning
72
76
` ,
77
+ nil ,
73
78
},
74
79
75
80
{
@@ -88,6 +93,7 @@ func TestFuckingChangelog(t *testing.T) {
88
93
- [#87](https://example.com/pr/87): Test
89
94
- [#42](https://example.com/pr/42): Added the meaning
90
95
` ,
96
+ nil ,
91
97
},
92
98
93
99
{
@@ -111,12 +117,65 @@ func TestFuckingChangelog(t *testing.T) {
111
117
112
118
- [#42](https://example.com/pr/42): Added the meaning
113
119
` ,
120
+ nil ,
121
+ },
122
+
123
+ {
124
+ `## [Under udvikling]
125
+ ` ,
126
+ pullRequest {
127
+ Number : 87 ,
128
+ Title : "Test" ,
129
+ Url : "https://example.com/pr/87" ,
130
+ },
131
+ defaultItemTemplate ,
132
+ `## [Under udvikling]
133
+
134
+ * [PR-87](https://example.com/pr/87)
135
+ Test
136
+ ` ,
137
+ nil ,
138
+ },
139
+
140
+ {
141
+ `## [under udviklinG]
142
+ ` ,
143
+ pullRequest {
144
+ Number : 87 ,
145
+ Title : "Test" ,
146
+ Url : "https://example.com/pr/87" ,
147
+ },
148
+ defaultItemTemplate ,
149
+ `## [under udviklinG]
150
+
151
+ * [PR-87](https://example.com/pr/87)
152
+ Test
153
+ ` ,
154
+ nil ,
155
+ },
156
+
157
+ {
158
+ `## [We're still working on it]
159
+ ` ,
160
+ pullRequest {
161
+ Number : 87 ,
162
+ Title : "Test" ,
163
+ Url : "https://example.com/pr/87" ,
164
+ },
165
+ defaultItemTemplate ,
166
+ "" ,
167
+ fmt .Errorf ("cannot find Unreleased/Under udvikling header" ),
114
168
},
115
169
}
116
170
117
171
for _ , testCase := range testCases {
118
- actual , _ := addPullRequest (testCase .changelog , testCase .pullRequest , testCase .itemTemplate )
119
-
120
- assert .Equal (t , testCase .expected , actual )
172
+ actual , err := addPullRequest (testCase .changelog , testCase .pullRequest , testCase .itemTemplate )
173
+ if err != nil {
174
+ if assert .NotNil (t , testCase .expectedErr ) {
175
+ assert .Equal (t , testCase .expectedErr .Error (), err .Error ())
176
+ }
177
+ } else {
178
+ assert .Equal (t , testCase .expected , actual )
179
+ }
121
180
}
122
181
}
0 commit comments