DDC1594Test.php 1.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace Doctrine\Tests\ORM\Functional\Ticket;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\Tests\Models\CMS\CmsComment;
  5. use Doctrine\Tests\Models\CMS\CmsArticle;
  6. use Doctrine\Tests\Models\CMS\CmsUser;
  7. /**
  8. * @group DDC-1594
  9. */
  10. class DDC1594Test extends \Doctrine\Tests\OrmFunctionalTestCase
  11. {
  12. public function setUp()
  13. {
  14. $this->useModelSet('cms');
  15. parent::setUp();
  16. }
  17. public function testIssue()
  18. {
  19. $user = new CmsUser();
  20. $user->status = 'foo';
  21. $user->username = 'foo';
  22. $user->name = 'foo';
  23. $this->_em->persist($user);
  24. $this->_em->flush();
  25. $this->_em->clear();
  26. $detachedUser = clone $user;
  27. $detachedUser->name = 'bar';
  28. $detachedUser->status = 'bar';
  29. $newUser = $this->_em->getReference(get_class($user), $user->id);
  30. $mergedUser = $this->_em->merge($detachedUser);
  31. $this->assertNotSame($mergedUser, $detachedUser);
  32. $this->assertEquals('bar', $detachedUser->getName());
  33. $this->assertEquals('bar', $mergedUser->getName());
  34. }
  35. }