@@ -133,13 +133,40 @@ func TestSimpleXListed(t *testing.T) {
133133 require .Nil (t , err )
134134 assert .True (t , actualBlacklist )
135135 assert .Equal (t , "PR label matches one of specified blacklist labels: \" LABEL_NOMERGE\" " , actualBlacklistReason )
136+ })
137+
138+ t .Run ("labelCausesBlacklistCaseInsensitive" , func (t * testing.T ) {
139+ pc := & pulltest.MockPullContext {
140+ LabelValue : []string {"LABEL_nomERGE" },
141+ }
142+
143+ actualBlacklist , actualBlacklistReason , err := IsPRBlacklisted (ctx , pc , mergeConfig .Blacklist )
144+ require .Nil (t , err )
145+ assert .True (t , actualBlacklist )
146+ assert .Equal (t , "PR label matches one of specified blacklist labels: \" LABEL_NOMERGE\" " , actualBlacklistReason )
147+ })
148+
149+ t .Run ("labelCausesWhitelist" , func (t * testing.T ) {
150+ pc := & pulltest.MockPullContext {
151+ LabelValue : []string {"LABEL_MERGE" },
152+ }
136153
137154 actualWhitelist , actualWhitelistReason , err := IsPRWhitelisted (ctx , pc , mergeConfig .Whitelist )
138155 require .Nil (t , err )
139- assert .False (t , actualWhitelist )
140- assert .Equal (t , "no matching whitelist found " , actualWhitelistReason )
156+ assert .True (t , actualWhitelist )
157+ assert .Equal (t , "PR label matches one of specified whitelist labels: \" LABEL_MERGE \" " , actualWhitelistReason )
141158 })
142159
160+ t .Run ("labelCausesWhitelistCaseInsensitive" , func (t * testing.T ) {
161+ pc := & pulltest.MockPullContext {
162+ LabelValue : []string {"LABEL_meRGE" },
163+ }
164+
165+ actualWhitelist , actualWhitelistReason , err := IsPRWhitelisted (ctx , pc , mergeConfig .Whitelist )
166+ require .Nil (t , err )
167+ assert .True (t , actualWhitelist )
168+ assert .Equal (t , "PR label matches one of specified whitelist labels: \" LABEL_MERGE\" " , actualWhitelistReason )
169+ })
143170}
144171
145172func TestShouldMerge (t * testing.T ) {
@@ -191,6 +218,17 @@ func TestShouldMerge(t *testing.T) {
191218 assert .True (t , actualShouldMerge )
192219 })
193220
221+ t .Run ("labelShouldMergeCaseInsensitive" , func (t * testing.T ) {
222+ pc := & pulltest.MockPullContext {
223+ LabelValue : []string {"LABEL_merGE" },
224+ }
225+
226+ actualShouldMerge , err := ShouldMergePR (ctx , pc , mergeConfig )
227+
228+ require .Nil (t , err )
229+ assert .True (t , actualShouldMerge )
230+ })
231+
194232 t .Run ("noContextShouldntMerge" , func (t * testing.T ) {
195233 pc := & pulltest.MockPullContext {
196234 LabelValue : []string {"NOT_A_LABEL" },
@@ -235,6 +273,17 @@ func TestShouldMerge(t *testing.T) {
235273 assert .False (t , actualShouldMerge )
236274 })
237275
276+ t .Run ("labelCausesBlacklistCaseInsensitive" , func (t * testing.T ) {
277+ pc := & pulltest.MockPullContext {
278+ LabelValue : []string {"LABEL_nomERGE" },
279+ }
280+
281+ actualShouldMerge , err := ShouldMergePR (ctx , pc , mergeConfig )
282+
283+ require .Nil (t , err )
284+ assert .False (t , actualShouldMerge )
285+ })
286+
238287 t .Run ("substringCausesWhitelist" , func (t * testing.T ) {
239288 pc := & pulltest.MockPullContext {
240289 LabelValue : []string {"NOT_A_LABEL" },
0 commit comments