32 lines
691 B
PHP
32 lines
691 B
PHP
|
<?php
|
||
|
namespace nur\mapper\base;
|
||
|
|
||
|
use nur\b\io\StringReader;
|
||
|
use nur\mapper\line\LineReader;
|
||
|
use nur\t\TestCase;
|
||
|
|
||
|
class ProducerTest extends TestCase {
|
||
|
function testProducer() {
|
||
|
$p = new LineReader(new StringReader("first\nsecond\nthird\nfourth\nfifth"));
|
||
|
$i = 0;
|
||
|
$lines = [];
|
||
|
foreach ($p as $line) {
|
||
|
if ($i++ < 2) {
|
||
|
$lines[] = $line;
|
||
|
} else {
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
$p->close();
|
||
|
self::assertSame(["first", "second"], $lines);
|
||
|
|
||
|
$p = new LineReader(new StringReader("first\nsecond\n"));
|
||
|
$lines = [];
|
||
|
foreach ($p as $line) {
|
||
|
$lines[] = $line;
|
||
|
}
|
||
|
$p->close();
|
||
|
self::assertSame(["first", "second"], $lines);
|
||
|
}
|
||
|
}
|