--TEST-- MongoDB\Driver\Cursor does not allow iterating multiple times (toArray()) --SKIPIF-- --FILE-- insert(array('_id' => $i)); } $writeResult = $manager->executeBulkWrite(NS, $bulkWrite); printf("Inserted: %d\n", $writeResult->getInsertedCount()); $cursor = $manager->executeQuery(NS, new MongoDB\Driver\Query(array())); echo "\nFirst Cursor::toArray():\n"; var_dump($cursor->toArray()); echo "\nSecond Cursor::toArray():\n"; echo throws(function () use ($cursor) { var_dump($cursor->toArray()); }, MongoDB\Driver\Exception\LogicException::class), "\n"; ?> ===DONE=== --EXPECTF-- Inserted: 3 First Cursor::toArray(): array(3) { [0]=> object(stdClass)#%d (1) { ["_id"]=> int(0) } [1]=> object(stdClass)#%d (1) { ["_id"]=> int(1) } [2]=> object(stdClass)#%d (1) { ["_id"]=> int(2) } } Second Cursor::toArray(): OK: Got MongoDB\Driver\Exception\LogicException Cursors cannot rewind after starting iteration ===DONE===