use Test::More;
use Test::Deep;
my $user = {
name => '齋藤飛鳥',
age => 19,
height => 158,
blood_type => 'O',
center => '裸足でSummer',
};
is $user->{age}, 19;
cmp_deeply $user, superhashof { name => '齋藤飛鳥', blood_type => 'O' };
done_testing;
[output]
₍ ᕕ( ‘ω’)ᕗ⁾ $ prove -lvf superhashof.pl
superhashof.pl ..
ok 1
ok 2
1..2
ok
All tests successful.
Files=1, Tests=2, 0 wallclock secs ( 0.03 usr 0.01 sys + 0.07 cusr 0.01 csys = 0.1
2 CPU)
Result: PASS
こける場合はこんな感じ。
use Test::More;
use Test::Deep;
my $user_2 = {
name => '斉藤優里',
age => 24,
height => 157,
blood_type => 'O',
center => '13日の金曜日',
};
cmp_deeply $user_2, superhashof { name => '齋藤優里', height => 157 };
done_testing;
[output]
₍ ᕕ( ‘ω’)ᕗ⁾ $ prove -lvf superhashof.pl
superhashof.pl ..
not ok 1
1..1
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/1 subtests
Test Summary Report
-------------------
superhashof.pl (Wstat: 256 Tests: 1 Failed: 1)
Failed test: 1
Non-zero exit status: 1
Files=1, Tests=1, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.05 cusr 0.01 csys = 0.08 CPU)
Result: FAIL
[参考]
Test::Deep - search.cpan.org