Inheritance: extends StreamSeeker, implements Kraken\Stream\StreamWriterInterface
Ejemplo n.º 1
0
 public function testStreamReader_StreamWriter_WriteAndReadDataScenario()
 {
     $local = $this->basePath();
     $writer = new StreamWriter(fopen("file://{$local}/temp", 'w+'));
     $reader = new StreamReader(fopen("file://{$local}/temp", 'r+'));
     $expectedData = "qwertyuiop\n";
     $capturedData = null;
     $readData = null;
     $reader->on('data', function ($origin, $data) use(&$capturedData) {
         $capturedData = $data;
     });
     $reader->on('drain', $this->expectCallableNever());
     $reader->on('error', $this->expectCallableNever());
     $reader->on('close', $this->expectCallableOnce());
     $writer->on('data', $this->expectCallableNever());
     $writer->on('drain', $this->expectCallableOnce());
     $writer->on('error', $this->expectCallableNever());
     $writer->on('close', $this->expectCallableOnce());
     $writer->write($expectedData);
     $readData = $reader->read();
     $writer->close();
     $reader->close();
     $this->assertEquals($expectedData, $readData);
     $this->assertEquals($expectedData, $capturedData);
 }
Ejemplo n.º 2
0
 /**
  * Handle close.
  *
  * @internal
  */
 public function handleClose()
 {
     $this->pause();
     parent::handleClose();
 }