for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Doctrine\Tests;
use Doctrine\ORM\Query;
use PHPUnit\Framework\Assert;
use function array_values;
use function is_array;
use function iterator_to_array;
final class GetIterableTester
{
public static function assertResultsAreTheSame(Query $query) : void
$result = $query->getResult();
$iterable = $query->getIterable();
Assert::assertSame($result, self::iterableToArray($iterable));
}
/**
* Copy the iterable into an array. If the iterable is already an array, return it.
*
* @param bool $use_keys [optional] Whether to use the iterator element keys as index.
* @return array
*/
private static function iterableToArray(iterable $iterable, $use_keys = true) : array
if (is_array($iterable)) {
return ($use_keys ? $iterable : array_values($iterable));
return iterator_to_array($iterable, $use_keys);