two-arg iterator; no exception});
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is ($@, q{}, q{Invoked two-arg iterator until exhausted});
is_deeply (\@vals, [4,
two-arg iterator; no exception});
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is ($@, q{}, q{Invoked two-arg iterator until exhausted});
is_deeply (\@vals, [],
two-arg iterator; no exception});
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is ($@, q{}, q{Invoked two-arg iterator until exhausted});
is_deeply (\@vals, [6],
$@, q{}, q{$fives created fine});
eval
{
push @vals, $fives->value while $fives->isnt_exhausted;
};
is ($@, q{}, q{$fives created fine});
is_deeply(\@vals, [0, 5, 10], q{$
$@, q{}, q{$small created fine});
eval
{
push @vals, $small->value while $small->isnt_exhausted;
};
is ($@, q{}, q{$small executed fine});
is_deeply(\@vals, [8, 9], q{$sma
$@, q{}, q{$iota5 created fine});
eval
{
push @vals, $iota5->value while $iota5->isnt_exhausted;
};
is ($@, q{}, q{$iota5 executed fine});
is_deeply(\@vals, [1, 2, 3, 4, 5
reated ihead iterator, no errors};
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is $x, q{}, q{Executed ihead iterator, no errors};
is_deeply (\@vals, [16, 25, 36
reated ihead iterator, no errors};
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is $x, q{}, q{Executed ihead iterator, no errors};
is_deeply (\@vals, [], q{ihead
reated ihead iterator, no errors};
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is $x, q{}, q{Executed ihead iterator, no errors};
is_deeply (\@vals, [], q{ihead
$worked, @vals);
## Parameter error (4)
eval
{
$iter = imap { $_ * 2} 'oops';
};
$x = $@;
isnt ($@, q{}, q{Wrong-type; exception thrown});
ok (Iterator::X->caught(), q{Wrong-type base except
= ();
eval
{
$iter = imap {$_ * $_} irange (1, 4);
push @vals, $iter->value while $iter->isnt_exhausted;
};
is ($@, q{}, q{No exception when imapping.});
is_deeply (\@vals, [1, 4, 9, 16], q{
ected results});
# Try pushing it further: (4)
eval
{
push @vals, $iter->value;
};
$x = $@;
isnt ($@, q{}, q{Imapped too far; exception thrown});
ok (Iterator::X->caught(), q{Too-far base exce
rray iterator, no errors};
@reported = ();
eval
{
push @reported, $iter->value while $iter->isnt_exhausted;
};
is $@, q{}, q{Executed array iterator, no errors};
is_deeply (\@reported, [1, 2,
'Mark Jason Dominus is God';
$vals[0] = '666';
push @reported, $iter->value while $iter->isnt_exhausted;
};
is $@, q{}, q{Executed array iterator, no errors};
is_deeply (\@reported, [1, 2,
e 110, 100, -5;
$iter = iappend $it1, $it2, $it3;
push @vals, $iter->value while $iter->isnt_exhausted;
};
is $@, q{}, q{Created iappend iterator, no errors};
is_deeply (\@vals, [1, 2, 3,
reated ilist iterator, no errors};
@vals = ();
eval
{
push @vals, $iter->value while $iter->isnt_exhausted;
};
is $x, q{}, q{Executed ilist iterator, no errors};
is_deeply (\@vals, [1, 2, 'foo