1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\VarDumper\Tests\Caster;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\PersistentCollection;
use PHPUnit\Framework\TestCase;
use Symfony\Component\VarDumper\Test\VarDumperTestTrait;
/**
* @requires function \Doctrine\Common\Collections\ArrayCollection::__construct
*/
class DoctrineCasterTest extends TestCase
{
use VarDumperTestTrait;
/**
* @group nophpunit11
*/
public function testCastPersistentCollection()
{
$classMetadata = new ClassMetadata(__CLASS__);
$entityManager = $this->createMock(EntityManagerInterface::class);
$entityManagerClass = $entityManager::class;
$collection = new PersistentCollection($entityManager, $classMetadata, new ArrayCollection(['test']));
if (property_exists(PersistentCollection::class, 'isDirty')) {
// Collections >= 2
$expected = <<<EODUMP
Doctrine\ORM\PersistentCollection {
%A
-em: $entityManagerClass { …3}
-backRefFieldName: null
-typeClass: Doctrine\ORM\Mapping\ClassMetadata { …}
-isDirty: false
%A
EODUMP;
} else {
// Collections 1
$expected = <<<EODUMP
Doctrine\ORM\PersistentCollection {
%A
-em: $entityManagerClass { …3}
-backRefFieldName: null
-typeClass: Doctrine\ORM\Mapping\ClassMetadata { …}
%A
EODUMP;
}
$this->assertDumpMatchesFormat($expected, $collection);
}
}
|