1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
#!perl
## no critic (Subroutines::ProtectPrivateSubs)
## no critic (ValuesAndExpressions::ProhibitMagicNumbers)
use strict;
use warnings;
use Test2::V0;
use Env::Assert qw( );
subtest 'Private Subroutine _interpret_opts()' => sub {
{
my $opts_str = 'exact=1';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = ( exact => 1, );
is( $opts, \%expected, 'Read options successfully' );
}
{
my $opts_str = 'exact=0';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = ( exact => 0, );
is( $opts, \%expected, 'Read options successfully' );
}
{
my $opts_str = 'exact=123';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = ( exact => 123, );
is( $opts, \%expected, 'Read options successfully' );
}
{
my $opts_str = 'exact=1.234';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = ( exact => 1.234, );
is( $opts, \%expected, 'Read options successfully' );
}
{
my $opts_str = 'exact=1,234';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = (
exact => 1,
234 => undef
);
is( $opts, \%expected, 'Read options successfully' );
}
{
my $opts_str = 'key_1=1,key_2=234, key_3=text , key_4=more text, key_5=';
my $opts = Env::Assert::_interpret_opts($opts_str);
my %expected = (
key_1 => 1,
key_2 => 234,
key_3 => 'text',
key_4 => 'more text',
key_5 => q{},
);
is( $opts, \%expected, 'Read options successfully' );
}
done_testing;
};
done_testing;
|