3 namespace Doctrine\Tests\ORM\Functional\Ticket;
5 use Doctrine\ORM\UnitOfWork;
10 class DDC1509Test extends \Doctrine\Tests\OrmFunctionalTestCase
13 protected function setUp()
18 $this->_schemaTool->createSchema(array(
19 $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1509AbstractFile'),
20 $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1509File'),
21 $this->_em->getClassMetadata(__NAMESPACE__ . '\DDC1509Picture'),
23 } catch (\Exception $ignored) {
28 public function testFailingCase()
30 $file = new DDC1509File;
31 $thumbnail = new DDC1509File;
33 $picture = new DDC1509Picture;
34 $picture->setFile($file);
35 $picture->setThumbnail($thumbnail);
38 /* @var $em \Doctrine\ORM\EntityManager */
40 $em->persist($picture);
44 $id = $picture->getPictureId();
46 $pic = $em->merge($picture);
47 /* @var $pic DDC1509Picture */
49 $this->assertNotNull($pic->getThumbnail());
50 $this->assertNotNull($pic->getFile());
62 * @Column(type="integer")
64 * @GeneratedValue(strategy="AUTO")
69 * @ManyToOne(targetEntity="DDC1509AbstractFile", cascade={"persist", "remove"})
74 * @ManyToOne(targetEntity="DDC1509AbstractFile", cascade={"persist", "remove"})
81 public function getPictureId()
89 public function setFile($value = null)
97 public function getFile()
102 public function getThumbnail()
104 return $this->thumbnail;
107 public function setThumbnail($thumbnail)
109 $this->thumbnail = $thumbnail;
116 * @InheritanceType("SINGLE_TABLE")
117 * @DiscriminatorColumn(name="discr", type="string")
118 * @DiscriminatorMap({"file" = "DDC1509File"})
120 class DDC1509AbstractFile
124 * @Column(type="integer")
126 * @GeneratedValue(strategy="AUTO")
133 public function getFileId()
143 class DDC1509File extends DDC1509AbstractFile