Crypt-SecretBuffer
view release on metacpan or search on metacpan
sv_resetpvn|5.017005||Viu
SvRMAGICAL|5.003007||Viu
SvRMAGICAL_off|5.003007||Viu
SvRMAGICAL_on|5.003007||Viu
SvROK|5.003007|5.003007|
SvROK_off|5.003007|5.003007|
SvROK_on|5.003007|5.003007|
SvRV|5.003007|5.003007|
SvRV_const|5.010001||Viu
SvRV_set|5.009003|5.003007|p
sv_rvunweaken|5.027004|5.027004|
sv_rvweaken|5.006000|5.006000|
SvRVx|5.003007||Viu
SvRX|5.009005|5.003007|p
SvRXOK|5.009005|5.003007|p
SV_SAVED_COPY|5.009005||Viu
SvSCREAM|5.003007||Viu
SvSCREAM_off|5.003007||Viu
SvSCREAM_on|5.003007||Viu
sv_setbool|5.035004|5.035004|
sv_setbool_mg|5.035004|5.035004|
sv_setgid|5.019001||Viu
t/04-unmask.t view on Meta::CPAN
use FindBin;
use lib "$FindBin::Bin/lib";
use Test2AndUtils;
use Scalar::Util 'weaken';
use Crypt::SecretBuffer qw( secret unmask_secrets_to );
package FalseException;
use overload '""' => sub { '' };
sub new { bless {}, shift }
package main;
subtest unmask_to => sub {
my $buf= secret("test");
# in void context
my $wref;
$buf->unmask_to(sub {
is( \@_, [ 'test' ], 'args' );
is( wantarray, undef, 'undef wantarray' );
my $ref= [];
weaken( $wref= $ref );
return $ref;
});
ok( !defined $wref, 'ref was freed' );
# in scalar context
my $ret= $buf->unmask_to(sub {
is( \@_, [ 'test' ], 'args' );
is( wantarray, F, 'false wantarray' );
return @{[5,6,7]};
});
t/04-unmask.t view on Meta::CPAN
subtest unmask_secrets_to => sub {
my $buf1= secret("buf1");
my $buf2= secret("buf2");
# in void context
my $wref;
unmask_secrets_to(sub {
is( \@_, [ 'buf1', 'buf2', 1, 2, 7 ], 'args' );
is( wantarray, undef, 'undef wantarray' );
my $ref= [];
weaken( $wref= $ref );
return $ref;
}, $buf1, $buf2, 1, 2, 7);
ok( !defined $wref, 'ref was freed' );
# in scalar context
my $ret= unmask_secrets_to(sub {
is( \@_, [ 'buf1', 'buf2', 'buf1', 'buf1' ], 'args' );
is( wantarray, F, 'false wantarray' );
return @{[]};
}, $buf1, $buf2, $buf1, $buf1);
( run in 2.346 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )