]> git.vpit.fr Git - perl/modules/Regexp-Wildcards.git/blob - t/12-brackets.t
Importing Regexp-Wildcards-0.01.tar.gz
[perl/modules/Regexp-Wildcards.git] / t / 12-brackets.t
1 #!perl -T
2
3 use Test::More tests => 28;
4
5 use Regexp::Wildcards qw/wc2re_jokers wc2re_unix wc2re_win32/;
6
7 ok(wc2re_jokers('a{b\\\\,c\\\\}d') eq 'a\\{b\\\\\\,c\\\\\\}d');
8
9 ok(wc2re_win32('a{b\\\\,c\\\\}d') eq '(?:a\\{b\\\\|c\\\\\\}d)');
10
11 ok(wc2re_unix('{}') eq '(?:)');
12 ok(wc2re_unix('{a}') eq '(?:a)');
13 ok(wc2re_unix('{a,b}') eq '(?:a|b)');
14 ok(wc2re_unix('{a,b,c}') eq '(?:a|b|c)');
15
16 ok(wc2re_unix('a{b,c}d') eq 'a(?:b|c)d');
17 ok(wc2re_unix('a{b,c}d{e,,f}') eq 'a(?:b|c)d(?:e||f)');
18 ok(wc2re_unix('a{b,c}d{e,,f}{g,h,}') eq 'a(?:b|c)d(?:e||f)(?:g|h|)');
19
20 ok(wc2re_unix('{a{b}}') eq '(?:a(?:b))');
21 ok(wc2re_unix('{a,{b},c}') eq '(?:a|(?:b)|c)');
22 ok(wc2re_unix('{a,{b{d}e},c}') eq '(?:a|(?:b(?:d)e)|c)');
23 ok(wc2re_unix('{a,{b{d{}}e,f,,},c}') eq '(?:a|(?:b(?:d(?:))e|f||)|c)');
24 ok(wc2re_unix('{a,{b{d{}}e,f,,},c}{,g{{}h,i}}') eq '(?:a|(?:b(?:d(?:))e|f||)|c)(?:|g(?:(?:)h|i))');
25
26 ok(wc2re_unix('\\{\\\\}') eq '\\{\\\\\\}');
27 ok((not defined wc2re_unix('\\{a,b,c\\\\\\}')));
28 ok(wc2re_unix('\\{a\\\\\\,b\\,c}') eq '\\{a\\\\\\,b\\,c\\}');
29 ok(wc2re_unix('\\{a\\\\\\,b\\,c\\}') eq '\\{a\\\\\\,b\\,c\\}');
30 ok(wc2re_unix('\\{a\\\\\\,b\\,c\\\\}') eq '\\{a\\\\\\,b\\,c\\\\\\}');
31
32 ok(wc2re_unix('{a\\},b\\{,c}') eq '(?:a\\}|b\\{|c)');
33 ok((not defined wc2re_unix('{a,\\{}b,c}')));
34 ok((not defined wc2re_unix('{a\\{}b,c}')));
35 ok(wc2re_unix('{a\\{b,c}d\\,e}') eq '(?:a\\{b|c)d\\,e\\}');
36 ok(wc2re_unix('{a{b\\,c\\}d\\,e}') eq '\\{a\\{b\\,c\\}d\\,e\\}');
37 ok(wc2re_unix('{a\\{\\\\}b\\,c\\\\}') eq '(?:a\\{\\\\)b\\,c\\\\\\}');
38 ok(wc2re_unix('{a,\\{\\}b,c}') eq '(?:a|\\{\\}b|c)');
39 ok(wc2re_unix('{a,\\{d,e,,\\}b,c}') eq '(?:a|\\{d|e||\\}b|c)');
40 ok(wc2re_unix('{a,\\{d,e,,\\}b,c}\\\\{f,g,h,i}') eq '(?:a|\\{d|e||\\}b|c)\\\\(?:f|g|h|i)');