Parse-Distname
view release on metacpan or search on metacpan
t/compat/path.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Differences;
use JSON::PP;
use Parse::Distname;
local $/ ="";
unified_diff;
sub encode { JSON::PP->new->canonical->pretty->encode(shift) }
while(<DATA>) {
chomp;
s/^#[^\n]+\n//s;
my($file,%exp) = split(/[ \n]+/, $_);
$exp{pathname} = $file;
my $d = Parse::Distname->new($file);
my %got = $d->properties;
while (my($k, $v) = each %got) {
is($d->$k(), $v);
}
eq_or_diff(encode(\%got), encode(\%exp));
}
done_testing;
__DATA__
CPAN/authors/id/J/JA/JAMCC/ngb-101.zip
filename ngb-101.zip
dist ngb
maturity released
distvname ngb-101
version 101
cpanid JAMCC
extension zip
CPAN/authors/id/J/JS/JSHY/DateTime-Fiscal-Year-0.01.tar.gz
filename DateTime-Fiscal-Year-0.01.tar.gz
dist DateTime-Fiscal-Year
maturity released
distvname DateTime-Fiscal-Year-0.01
version 0.01
cpanid JSHY
extension tar.gz
CPAN/authors/id/G/GA/GARY/Math-PRSG-1.0.tgz
filename Math-PRSG-1.0.tgz
dist Math-PRSG
maturity released
distvname Math-PRSG-1.0
version 1.0
cpanid GARY
extension tgz
CPAN/authors/id/G/GA/GARY/Math-BigInteger-1.0.tar.gz
filename Math-BigInteger-1.0.tar.gz
dist Math-BigInteger
maturity released
distvname Math-BigInteger-1.0
version 1.0
cpanid GARY
extension tar.gz
( run in 2.109 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )