public function testTruncate() { $s = new Stream(); $s->open(STREAM_MODE_READWRITE); $s->write('This is a beautiful example stream.'); // Truncating to a longer stream does not work... $this->assertFalse($s->truncate(1000)); // ... only truncating to smaller size $this->assertTrue($s->truncate(10)); $this->assertEquals($s->size(), 10); $this->assertEquals($s->tell(), 10); $this->assertEquals($s->buffer, 'This is a '); }
public function testReadline() { $stream = new Stream(); $stream->open(STREAM_MODE_WRITE); $stream->writeLine('This is the first line.'); $stream->writeLine('This is the second line.'); $stream->writeLine('And there is a third one.'); $stream->close(); $stream->open(STREAM_MODE_READ); $this->s = new EncapsedStream($stream, 5, $stream->size() - 35); $this->assertEquals('is the first line.', $this->s->readLine()); $this->assertEquals('This is the second li', $this->s->readLine()); $this->assertEquals('', $this->s->readLine()); }