DDC1548Test.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. namespace Doctrine\Tests\ORM\Functional\Ticket;
  3. /**
  4. * @group DDC-1548
  5. */
  6. class DDC1548Test extends \Doctrine\Tests\OrmFunctionalTestCase
  7. {
  8. public function setUp()
  9. {
  10. parent::setUp();
  11. $this->_schemaTool->createSchema(array(
  12. $this->_em->getClassMetadata(__NAMESPACE__ . '\\DDC1548E1'),
  13. $this->_em->getClassMetadata(__NAMESPACE__ . '\\DDC1548E2'),
  14. $this->_em->getClassMetadata(__NAMESPACE__ . '\\DDC1548Rel'),
  15. ));
  16. }
  17. public function testIssue()
  18. {
  19. $rel = new DDC1548Rel();
  20. $this->_em->persist($rel);
  21. $this->_em->flush();
  22. $e1 = new DDC1548E1();
  23. $e1->rel = $rel;
  24. $this->_em->persist($e1);
  25. $this->_em->flush();
  26. $this->_em->clear();
  27. $obt = $this->_em->find(__NAMESPACE__ . '\DDC1548Rel', $rel->id);
  28. $this->assertNull($obt->e2);
  29. }
  30. }
  31. /**
  32. * @Entity
  33. */
  34. class DDC1548E1
  35. {
  36. /**
  37. * @Id
  38. * @OneToOne(targetEntity="DDC1548Rel", inversedBy="e1")
  39. */
  40. public $rel;
  41. }
  42. /**
  43. * @Entity
  44. */
  45. class DDC1548E2
  46. {
  47. /**
  48. * @Id
  49. * @OneToOne(targetEntity="DDC1548Rel", inversedBy="e2")
  50. */
  51. public $rel;
  52. }
  53. /**
  54. * @Entity
  55. */
  56. class DDC1548Rel
  57. {
  58. /**
  59. * @Id @GeneratedValue
  60. * @Column(type="integer")
  61. */
  62. public $id;
  63. /**
  64. * @OneToOne(targetEntity="DDC1548E1", mappedBy="rel")
  65. */
  66. public $e1;
  67. /**
  68. * @OneToOne(targetEntity="DDC1548E2", mappedBy="rel")
  69. */
  70. public $e2;
  71. }