5 use Test::More tests => 28;
9 BEGIN { use_ok('List::Index' => 'rangematch'); }
13 ['#foo.!$' => '\#foo\.\!\$'],
16 [ -q => '(?:(?![q-z])|q)'],
17 [ -qqq => '(?:(?![q-z])|q(?![q-z])|qq(?![q-z])|qqq)'],
19 ['qqq-' => '(?:[r-z]|q[r-z]|qq[q-z])'],
23 [ 'qq-qqx' => '(?:qq(?![x-z])|qqx)'],
24 [ 'q-qx' => '(?:q(?![x-z])|qx)'],
25 ['qqq-xxx' => '(?:[r-w]|q[r-z]|qq[q-z]|x(?![x-z])|xx(?![x-z])|xxx)'],
26 ['qqq-xqq' => '(?:[r-w]|q[r-z]|qq[q-z]|x(?![q-z])|xq(?![q-z])|xqq)'],
27 ['qqq-xq' => '(?:[r-w]|q[r-z]|qq[q-z]|x(?![q-z])|xq)'],
28 [ 'qq-xqq' => '(?:[r-w]|q[q-z]|' . 'x(?![q-z])|xq(?![q-z])|xqq)'],
29 [ 'q-xxx' => '(?:[q-w]|x(?![x-z])|xx(?![x-z])|xxx)'],
30 ['qqq-x' => '(?:[r-x]|q[r-z]|qq[q-z])'],
31 ['qaa-qb' => '(?:qa[a-z]|qb)'],
32 ['qaa-qq' => '(?:q[b-p]|qa[a-z]|qq)'],
33 ['qqq-q' => '(?:q[r-z]|qq[q-z])'],
36 is(eval { rangematch($in) }, "(?i-xsm:^$out)", (length $in ? $in : q{''}));
46 is(eval { rangematch($in) }, undef, (length $in ? $in : q{''}) . ' failure');