@@ -233,18 +233,53 @@ func TestParseRule(t *testing.T) {
233
233
Comment : "" ,
234
234
},
235
235
},
236
+ {
237
+ name : "pattern with pipe character '|'" ,
238
+ rule : "foo|bar|baz @org/team" ,
239
+ expected : Rule {
240
+ pattern : mustBuildPattern (t , "foo|bar|baz" ),
241
+ Owners : []Owner {{Value : "org/team" , Type : "team" }},
242
+ },
243
+ },
244
+ {
245
+ name : "pattern with left curly brace '{'" ,
246
+ rule : "foo{bar.txt @org/team" ,
247
+ expected : Rule {
248
+ pattern : mustBuildPattern (t , "foo{bar.txt" ),
249
+ Owners : []Owner {{Value : "org/team" , Type : "team" }},
250
+ },
251
+ },
252
+ {
253
+ name : "pattern with right curly brace '}'" ,
254
+ rule : "foo}bar.txt @org/team" ,
255
+ expected : Rule {
256
+ pattern : mustBuildPattern (t , "foo}bar.txt" ),
257
+ Owners : []Owner {{Value : "org/team" , Type : "team" }},
258
+ },
259
+ },
260
+ {
261
+ name : "pattern with curly braces '{' and '}'" ,
262
+ rule : "foo{bar}.txt @org/team" ,
263
+ expected : Rule {
264
+ pattern : mustBuildPattern (t , "foo{bar}.txt" ),
265
+ Owners : []Owner {{Value : "org/team" , Type : "team" }},
266
+ },
267
+ },
268
+ {
269
+ name : "pattern with curly braces and pipe character" ,
270
+ rule : "foo|{bar}.txt @org/team" ,
271
+ expected : Rule {
272
+ pattern : mustBuildPattern (t , "foo|{bar}.txt" ),
273
+ Owners : []Owner {{Value : "org/team" , Type : "team" }},
274
+ },
275
+ },
236
276
237
277
// Error cases
238
278
{
239
279
name : "empty rule" ,
240
280
rule : "" ,
241
281
err : "unexpected end of rule" ,
242
282
},
243
- {
244
- name : "malformed patterns" ,
245
- rule : "file.{txt @user" ,
246
- err : "unexpected character '{' at position 6" ,
247
- },
248
283
{
249
284
name : "patterns with brackets" ,
250
285
rule : "file.[cC] @user" ,
0 commit comments