Data-Recursive-Encode
view release on metacpan or search on metacpan
t/01_simple.t view on Meta::CPAN
use warnings;
use Test::More;
use Data::Recursive::Encode;
use Encode;
# utility functions
sub U($) { decode_utf8($_[0]) }
sub u($) { encode_utf8($_[0]) }
sub E($) { decode('euc-jp', $_[0]) }
sub e($) { encode('euc-jp', $_[0]) }
sub eU($) { e(U($_[0])) }
# -------------------------------------------------------------------------
subtest "decode_utf8" => sub {
my $D = sub { Data::Recursive::Encode->decode_utf8(@_) };
is_deeply([$D->('ããã')], [U('ããã')], 'scalar');
is_deeply([$D->(\('ããã'))], [\(U('ããã'))], 'scalarref');
is_deeply($D->(['ããã']), [U('ããã')], 'arrayref');
is_deeply($D->({'ããã' => 'ãã'}), {U('ããã'), U 'ãã'}, 'hashref');
t/02_more.t view on Meta::CPAN
use warnings;
use Test::More;
use Data::Recursive::Encode;
use Encode;
# utility functions
sub U($) { decode_utf8($_[0]) }
sub u($) { encode_utf8($_[0]) }
sub E($) { decode('euc-jp', $_[0]) }
sub e($) { encode('euc-jp', $_[0]) }
sub eU($) { e(U($_[0])) }
# -------------------------------------------------------------------------
subtest "decode_utf8" => sub {
my $D = sub { Data::Recursive::Encode->decode_utf8(@_) };
is_deeply([$D->('ããã'), undef], [U('ããã'), undef], 'undef');
is_deeply([$D->('ããã'), \*ok ], [U('ããã'), \*ok], 'globref');
is_deeply([$D->('ããã'), \&ok ], [U('ããã'), \&ok], 'coderef');
is_deeply([\\$D->('ããã') ], [\\U('ããã')], 'ref to ref');
t/03_recursive.t view on Meta::CPAN
use warnings;
use Test::More;
use Data::Recursive::Encode;
use Encode;
# utility functions
sub U($) { decode_utf8($_[0]) }
sub u($) { encode_utf8($_[0]) }
sub E($) { decode('euc-jp', $_[0]) }
sub e($) { encode('euc-jp', $_[0]) }
sub eU($) { e(U($_[0])) }
# -------------------------------------------------------------------------
my $E = sub { Data::Recursive::Encode->encode_utf8(@_) };
my $data = {
'foo' => { key => U('ããã'), qux => 42 }
};
$data->{bar} = $data->{foo};
( run in 0.858 second using v1.01-cache-2.11-cpan-5b529ec07f3 )