X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F12-maps-version.t;h=823e98c85988b730c23442273564adb56dd54bd1;hb=d77142c8216a27e216565391d32d2cf3f321f63c;hp=80a4baae45dc9db912ff903544d67a3cb05c3d8b;hpb=39dcc4f5ffa5f01ec7854c63fba5c70e7b963fd8;p=perl%2Fmodules%2FCPANPLUS-Dist-Gentoo.git diff --git a/t/12-maps-version.t b/t/12-maps-version.t index 80a4baa..823e98c 100644 --- a/t/12-maps-version.t +++ b/t/12-maps-version.t @@ -3,53 +3,46 @@ use strict; use warnings; -use Test::More tests => 10 + 24; +use Test::More tests => 11 + 2 * 5 + 7; use CPANPLUS::Dist::Gentoo::Maps; -*vc2g = \&CPANPLUS::Dist::Gentoo::Maps::version_c2g; +*vc2g = sub { + unshift @_, undef if @_ == 1; + goto &CPANPLUS::Dist::Gentoo::Maps::version_c2g +}; is vc2g('1'), '1', "version_c2g('1')"; -is vc2g('a1b'), '1', "version_c2g('a1b')"; +is vc2g('v1'), '1', "version_c2g('v1')"; is vc2g('..1'), '1', "version_c2g('..1')"; is vc2g('1.0'), '1.0', "version_c2g('1.0')"; +is vc2g('v1.0'), '1.0', "version_c2g('v1.0')"; is vc2g('1._0'), '1.0', "version_c2g('1._0')"; is vc2g('1_1'), '1_p1', "version_c2g('1_1')"; is vc2g('1_.1'), '1_p1', "version_c2g('1_.1')"; is vc2g('1_.1._2'), '1_p1.2', "version_c2g('1_.1._2')"; -is vc2g('1_.1_2'), '1_p1.2', "version_c2g('1_.1_2')"; -is vc2g('1_.1_.2'), '1_p1.2', "version_c2g('1_.1_.2')"; - -*vgcmp = \&CPANPLUS::Dist::Gentoo::Maps::version_gcmp; - -eval { vgcmp('dongs', 1) }; -like $@, qr/Couldn't\s+parse\s+version\s+string/, "version_gcmp('dongs', 1)"; - -eval { vgcmp(1, 'dongs') }; -like $@, qr/Couldn't\s+parse\s+version\s+string/, "version_gcmp(1, 'dongs')"; - -is vgcmp(undef, 0), 0, 'version_gcmp(undef, 0)'; -is vgcmp(0, 0), 0, 'version_gcmp(0, 0)'; -is vgcmp(1, 0), 1, 'version_gcmp(1, 0)'; -is vgcmp(0, 1), -1, 'version_gcmp(0, 1)'; -is vgcmp(1, 1), 0, 'version_gcmp(1, 1)'; - -is vgcmp('1.0', 1), 0, "version_gcmp('1.0', 1)"; -is vgcmp('1.1', 1), 1, "version_gcmp('1.1', 1)"; -is vgcmp('1.1', '1.0'), 1, "version_gcmp('1.1', '1.0')"; -is vgcmp(1, '1.0'), 0, "version_gcmp(1, '1.0')"; -is vgcmp(1, '1.1'), -1, "version_gcmp(1, '1.1')"; -is vgcmp('1.0', '1.1'), -1, "version_gcmp('1.0', '1.1')"; - -is vgcmp('1.0_p0', '1.0_p0'), 0, "version_gcmp('1.0_p0', '1.0_p0')"; -is vgcmp('1.0_p0', '1.0_p1'), -1, "version_gcmp('1.0_p0', '1.0_p1')"; -is vgcmp('1.1_p0', '1.0_p1'), 1, "version_gcmp('1.1_p0', '1.0_p1')"; -is vgcmp('1.1_p0', '1.1_p0.1'), -1, "version_gcmp('1.1_p0', '1.1_p0.1')"; -is vgcmp('1.1_p0.1', '1.1_p0.1'), 0, "version_gcmp('1.1_p0.1', '1.1_p0.1')"; - -is vgcmp('1.2_p0-r0', '1.2_p0'), 0, "version_gcmp('1.2_p0-r0', '1.2_p0')"; -is vgcmp('1.2_p0-r1', '1.2_p0'), 1, "version_gcmp('1.2_p0-r1', '1.2_p0')"; -is vgcmp('1.2-r0', '1.2_p0'), 0, "version_gcmp('1.2-r0', '1.2_p0')"; -is vgcmp('1.2-r1', '1.2_p0'), 1, "version_gcmp('1.2-r1', '1.2_p0')"; -is vgcmp('1.2-r1', '1.2_p1'), -1, "version_gcmp('1.2-r1', '1.2_p1')"; -is vgcmp('1.2-r2', '1.2_p1'), -1, "version_gcmp('1.2-r2', '1.2_p1')"; +is vc2g('1_.1_2'), '1_p12', "version_c2g('1_.1_2')"; +is vc2g('1_.1_.2'), '1_p12', "version_c2g('1_.1_.2')"; + +for my $test ([ '0.12' => '0.12' ], [ '0.1234' => '0.12.34' ]) { + my @dists = qw< + ExtUtils-CBuilder + ExtUtils-ParseXS + Module-Build + Time-HiRes + Time-Local + >; + for my $dist (@dists) { + is vc2g($dist, $test->[0]), $test->[1], "'version_c2g('$dist', '$test->[0]')"; + } +} + +*pvc2g = \&CPANPLUS::Dist::Gentoo::Maps::perl_version_c2g; + +is pvc2g('5'), '5', "perl_version_c2g('5')"; +is pvc2g('5.1'), '5.1', "perl_version_c2g('5.1')"; +is pvc2g('5.01'), '5.10', "perl_version_c2g('5.01')"; +is pvc2g('5.10'), '5.10', "perl_version_c2g('5.10')"; +is pvc2g('5.1.2'), '5.1.2', "perl_version_c2g('5.1.2')"; +is pvc2g('5.01.2'), '5.1.2', "perl_version_c2g('5.01.2')"; +is pvc2g('5.01002'), '5.10.20', "perl_version_c2g('5.01002')";