41 lines
804 B
Perl
41 lines
804 B
Perl
use strict;
|
|
use Test::More tests => 4;
|
|
use Iterator::Util;
|
|
|
|
# Check that iskip works as promised.
|
|
|
|
sub begins_with
|
|
{
|
|
my ($actual, $expected, $test_name) = @_;
|
|
|
|
$actual = substr($actual, 0, length $expected);
|
|
@_ = ($actual, $expected, $test_name);
|
|
goto &is;
|
|
}
|
|
|
|
my ($iter, @vals);
|
|
|
|
# iskip (2)
|
|
@vals = ();
|
|
eval
|
|
{
|
|
$iter = iskip 5, irange 8;
|
|
push @vals, $iter->value for (1..4);
|
|
};
|
|
|
|
is $@, q{}, q{Created iskip iterator, no errors};
|
|
is_deeply (\@vals, [13, 14, 15, 16], q{iskip returned expected values.});
|
|
|
|
|
|
# iskip_until (2)
|
|
@vals = ();
|
|
eval
|
|
{
|
|
$iter = iskip_until {$_ % 5 == 0} irange 8;
|
|
push @vals, $iter->value for (1..4);
|
|
};
|
|
|
|
is $@, q{}, q{Created iskip_until iterator, no errors};
|
|
is_deeply (\@vals, [10, 11, 12, 13], q{iskip_until returned expected values.});
|
|
|