The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

use strict;
use Dist::Mgr qw(:all);
use lib 't/lib';
use Helper qw(:all);
# bad params
{
# no version
is eval {
version_incr();
1
}, undef, "version_incr() croaks if no param";
like $@, qr/needs a version number/, "...and error is sane";
# invalid version
is eval {
version_incr('1.07asdf');
1
}, undef, "invalid version croaks ok";
like $@, qr/The version number/, "...and error is sane";
}
# version
{
my $orig = '0.01';
my $v = '0.01';
for (0..500) {
$v = version_incr($v);
my $incr = ('0.01' * $_) + '0.01';
is $v, sprintf("%.2f", $orig + $incr), "version incremented to $v at round $_ ok";
}
}
done_testing();