49 lines
1.7 KiB
Diff
49 lines
1.7 KiB
Diff
|
From 807262f4aeb0694b6eabcc1acffecfa87e1df783 Mon Sep 17 00:00:00 2001
|
||
|
From: Kent Fredric <kentfredric@gmail.com>
|
||
|
Date: Sat, 7 May 2011 09:35:19 +1200
|
||
|
Subject: [PATCH] Suggested fix for RT#66841
|
||
|
|
||
|
Replace regexp validation tests with similar tests that permit it to be
|
||
|
any one of a list of values.
|
||
|
---
|
||
|
t/01_normal.t | 23 +++++++++++++++++------
|
||
|
1 files changed, 17 insertions(+), 6 deletions(-)
|
||
|
|
||
|
diff --git a/t/01_normal.t b/t/01_normal.t
|
||
|
index 305da37..08c57f4 100644
|
||
|
--- a/t/01_normal.t
|
||
|
+++ b/t/01_normal.t
|
||
|
@@ -18,12 +18,23 @@ use_ok('File::MimeInfo', qw/mimetype describe globs/); # 1
|
||
|
|
||
|
# test _glob_to_regexp
|
||
|
my $i = 0;
|
||
|
-for (
|
||
|
- [ '*.pl', '(?-xism:^.*\.pl$)' ], # 4
|
||
|
- [ '*.h++', '(?-xism:^.*\.h\+\+$)' ], # 5
|
||
|
- [ '*.[tar].*', '(?-xism:^.*\.[tar]\..*$)'], # 6
|
||
|
- [ '*.?', '(?-xism:^.*\..?$)'], # 7
|
||
|
-) { is( File::MimeInfo::_glob_to_regexp($_->[0]), $_->[1], 'glob '.++$i ) }
|
||
|
+for my $glob (
|
||
|
+ [ '*.pl', [ '(?-xism:^.*\.pl$)', '(?^u:^.*\.pl$)' ] ], # 4
|
||
|
+ [ '*.h++', [ '(?-xism:^.*\.h\+\+$)', '(?^u:^.*\.h\+\+$)' ] ], # 5
|
||
|
+ [ '*.[tar].*', [ '(?-xism:^.*\.[tar]\..*$)', '(?^u:^.*\.[tar]\..*$)' ] ], # 6
|
||
|
+ [ '*.?', [ '(?-xism:^.*\..?$)', '(?^u:^.*\..?$)' ] ], # 7
|
||
|
+ )
|
||
|
+{
|
||
|
+ my $converted = File::MimeInfo::_glob_to_regexp( $glob->[0] );
|
||
|
+ my $number = ++$i;
|
||
|
+ if ( my ($match) = grep { $_ eq "$converted" } @{ $glob->[1] } ) {
|
||
|
+ pass( 'glob ' . $number . ' matches an expected value' );
|
||
|
+ note explain $match;
|
||
|
+ next;
|
||
|
+ }
|
||
|
+ fail( 'glob ' . $number . ' matches an expected value' );
|
||
|
+ diag explain { got => "$converted", expected_one_of => $glob->[1] };
|
||
|
+}
|
||
|
|
||
|
# test parsing file names
|
||
|
$i = 0;
|
||
|
--
|
||
|
1.7.5.rc3
|
||
|
|