mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 09:40:21 +00:00
49 lines
1.0 KiB
Raku
49 lines
1.0 KiB
Raku
use v6;
|
|
use Test;
|
|
|
|
plan 9;
|
|
|
|
sub test_lines(@lines) {
|
|
#!rakudo todo 'line counts'
|
|
is @lines.elems, 3, 'Three lines read';
|
|
is @lines[0],
|
|
"Please do not remove this file, used by S16-io/basic-open.t",
|
|
'Retrieved first line';
|
|
is @lines[2],
|
|
"This is a test line.",
|
|
'Retrieved last line';
|
|
}
|
|
|
|
#?niecza skip 'TextReader.eof NYI'
|
|
{
|
|
my $fh = open('t/spec/S16-io/test-data');
|
|
my $count = 0;
|
|
while !$fh.eof {
|
|
my $x = $fh.get;
|
|
$count++ if $x.defined;
|
|
}
|
|
is $count, 3, 'Read three lines with while !$hanlde.eof';
|
|
}
|
|
|
|
# test that we can interate over $fh.lines
|
|
{
|
|
my $fh = open('t/spec/S16-io/test-data');
|
|
|
|
ok defined($fh), 'Could open test file';
|
|
my @lines;
|
|
for $fh.lines -> $x {
|
|
push @lines, $x;
|
|
}
|
|
test_lines(@lines);
|
|
}
|
|
|
|
# test that we can get all items in list context:
|
|
{
|
|
my $fh = open('t/spec/S16-io/test-data');
|
|
ok defined($fh), 'Could open test file (again)';
|
|
my @lines = $fh.lines;
|
|
test_lines(@lines);
|
|
}
|
|
|
|
# vim: ft=perl6
|