xref: /openbsd-src/gnu/usr.bin/perl/cpan/version/t/11_taint.t (revision 5759b3d249badf144a6240f7eec4dcf9df003e6b)
1*5759b3d2Safresh1#!perl -T
2*5759b3d2Safresh1use Test::More;
3*5759b3d2Safresh1use version;
4*5759b3d2Safresh1
5*5759b3d2Safresh1BEGIN {
6*5759b3d2Safresh1    eval "use Test::Taint";
7*5759b3d2Safresh1    if ($@) {
8*5759b3d2Safresh1	plan skip_all => "No Test::Taint available";
9*5759b3d2Safresh1    } else {
10*5759b3d2Safresh1	plan tests => 6;
11*5759b3d2Safresh1    }
12*5759b3d2Safresh1}
13*5759b3d2Safresh1
14*5759b3d2Safresh1taint_checking_ok();
15*5759b3d2Safresh1my $v = 'v1.2.3';
16*5759b3d2Safresh1taint($v);
17*5759b3d2Safresh1tainted_ok($v, 'Set string as tainted');
18*5759b3d2Safresh1my $v2 = version->parse($v);
19*5759b3d2Safresh1isnt("$v2", '', 'Correctly parsed the tainted string');
20*5759b3d2Safresh1tainted_ok($v2, 'Resulting version object is tainted');
21*5759b3d2Safresh1
22*5759b3d2Safresh1my $vs = "$v2";
23*5759b3d2Safresh1tainted_ok($vs, 'Stringified object still tainted');
24*5759b3d2Safresh1is $v2, 'v1.2.3', 'Comparison to tainted object';
25