1
0
mirror of synced 2025-02-07 15:59:27 +03:00
doctrine2/tests/Doctrine/Tests/ORM/Functional/ManyToManyExtraLazyContainsTest.php

55 lines
1.7 KiB
PHP

<?php
namespace Doctrine\Tests\ORM\Functional;
use Doctrine\Common\Collections\ArrayCollection;
require_once __DIR__ . '/../../TestInit.php';
/**
*
*/
class ManyToManyExtraLazyContainsTest extends \Doctrine\Tests\OrmFunctionalTestCase
{
public function setUp()
{
$this->useModelSet('company');
parent::setUp();
}
public function testManyToManyExtraLazyContainsAddedPendingInsertEntityIsTrue()
{
$contract = new \Doctrine\Tests\Models\Company\CompanyFlexContract();
$this->_em->persist($contract);
$this->_em->flush();
$this->_em->clear();
$contract = $this->_em->find('Doctrine\Tests\Models\Company\CompanyFlexContract', $contract->getId());
$pendingInsertManager = new \Doctrine\Tests\Models\Company\CompanyManager();
$this->_em->persist($pendingInsertManager);
$contract->getManagers()->add($pendingInsertManager);
$result = $contract->getManagers()->contains($pendingInsertManager);
$this->assertTrue($result);
}
public function testManyToManyExtraLazyContainsNonAddedPendingInsertEntityIsFalse()
{
$contract = new \Doctrine\Tests\Models\Company\CompanyFlexContract();
$this->_em->persist($contract);
$this->_em->flush();
$this->_em->clear();
$contract = $this->_em->find('Doctrine\Tests\Models\Company\CompanyFlexContract', $contract->getId());
$pendingInsertManager = new \Doctrine\Tests\Models\Company\CompanyManager();
$this->_em->persist($pendingInsertManager);
$result = $contract->getManagers()->contains($pendingInsertManager);
$this->assertFalse($result);
}
}