function toArray(ReadableObjectStream $stream) : Promise
{
    $promise = __promise($graceful = true);
    \ObjectStream\toArray($stream, [$promise, 'resolve']);
    return $promise;
}
 public function testToArray()
 {
     $buffer = buffer();
     $array = null;
     \ObjectStream\toArray($buffer, function ($error, $_array) use(&$array) {
         $array = $_array;
     });
     for ($i = 1; $i <= 100; $i++) {
         $buffer->write($i);
     }
     $buffer->end();
     $this->assertSame(range(1, 100), $array);
 }