1use Test::More; 2use strict; use warnings FATAL => 'all'; 3 4use List::Objects::WithUtils 'array'; 5 6my $arr = array(qw/ a b c /); 7 8my $last = $arr->tail; 9ok $last eq 'c', 'scalar tail ok'; 10 11my ($tail, $remains) = $arr->tail; 12ok $tail eq 'c', 'list tail first item ok'; 13is_deeply 14 [ $remains->all ], 15 [ qw/ a b / ], 16 'list tail second item ok'; 17 18ok !defined array->tail , 'empty array scalar tail undef ok'; 19($tail, $remains) = array->tail; 20ok !defined $tail, 'empty array list tail first item undef ok'; 21ok $remains->is_empty, 'empty array list tail second item is_empty ok'; 22 23done_testing; 24