]> git.vpit.fr Git - perl/modules/CPANPLUS-Dist-Gentoo.git/commitdiff
Handle undefined licenses gracefully
authorVincent Pit <vince@profvince.com>
Wed, 15 Dec 2010 23:16:27 +0000 (00:16 +0100)
committerVincent Pit <vince@profvince.com>
Wed, 15 Dec 2010 23:16:27 +0000 (00:16 +0100)
lib/CPANPLUS/Dist/Gentoo/Maps.pm
t/13-maps-license.t

index b9b96119745a2bcd698ae1ec8813f09701ce8acb..9c91f8525cda2e3776f0d44bfe2cb6876a7386e3 100644 (file)
@@ -67,7 +67,11 @@ my %licenses = (
 
 sub license_c2g {
  my %seen;
- grep !$seen{$_}++, map @{$licenses{+lc} || []}, @_;
+
+ grep !$seen{$_}++,
+  map @{$licenses{+lc} || []},
+   grep defined,
+    @_;
 }
 
 =head2 C<version_c2g $name, $version>
index 0a19d001a0a2630540392dc94b9b02dc166c9c02..e3119dc01bef04f14c48af9f05bc96de2b0519c4 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 4;
+use Test::More tests => 6;
 
 use CPANPLUS::Dist::Gentoo::Maps;
 
@@ -12,6 +12,8 @@ sub check_licenses {
  is_deeply \@licenses, $_[1], $_[2];
 }
 
+check_licenses [ ],               [ ],                        'empty';
+check_licenses [ undef ],         [ ],                        'undef';
 check_licenses [ 'woo' ],         [ ],                        'nonexistent';
 check_licenses [ 'perl' ],        [ qw/Artistic GPL-2/ ],     'perl';
 check_licenses [ qw/perl gpl2/ ], [ qw/Artistic GPL-2/ ],     'perl + gpl2';