142 lines
2.8 KiB
PHP
142 lines
2.8 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace Doctrine\Tests\ORM\Functional\Ticket;
|
||
|
|
||
|
use Doctrine\Common\Collections\ArrayCollection;
|
||
|
use Doctrine\Tests\Models\CMS\CmsUser;
|
||
|
use Doctrine\Tests\Models\CMS\CmsGroup;
|
||
|
|
||
|
require_once __DIR__ . '/../../../TestInit.php';
|
||
|
|
||
|
class DDC832Test extends \Doctrine\Tests\OrmFunctionalTestCase
|
||
|
{
|
||
|
public function setUp()
|
||
|
{
|
||
|
parent::setUp();
|
||
|
try {
|
||
|
$this->_schemaTool->createSchema(array(
|
||
|
$this->_em->getClassMetadata(__NAMESPACE__ . '\DDC832Like'),
|
||
|
$this->_em->getClassMetadata(__NAMESPACE__ . '\DDC832JoinedIndex'),
|
||
|
$this->_em->getClassMetadata(__NAMESPACE__ . '\DDC832JoinedTreeIndex'),
|
||
|
));
|
||
|
} catch(\Exception $e) {
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group DDC-832
|
||
|
*/
|
||
|
public function testQuotedTableBasicUpdate()
|
||
|
{
|
||
|
$like = new DDC832Like("test");
|
||
|
$this->_em->persist($like);
|
||
|
$this->_em->flush();
|
||
|
|
||
|
$like->word = "test2";
|
||
|
$this->_em->flush();
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group DDC-832
|
||
|
*/
|
||
|
public function testQuotedTableBasicRemove()
|
||
|
{
|
||
|
$like = new DDC832Like("test");
|
||
|
$this->_em->persist($like);
|
||
|
$this->_em->flush();
|
||
|
|
||
|
$this->_em->remove($like);
|
||
|
$this->_em->flush();
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group DDC-832
|
||
|
*/
|
||
|
public function testQuotedTableJoinedUpdate()
|
||
|
{
|
||
|
$this->markTestIncomplete('Not written yet.');
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group DDC-832
|
||
|
*/
|
||
|
public function testQuotedTableJoinedRemove()
|
||
|
{
|
||
|
$this->markTestIncomplete('Not written yet.');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @Entity
|
||
|
* @Table(name="`LIKE`")
|
||
|
*/
|
||
|
class DDC832Like
|
||
|
{
|
||
|
/**
|
||
|
* @Id @Column(type="string") @GeneratedValue
|
||
|
*/
|
||
|
public $id;
|
||
|
|
||
|
/** @Column(type="string") */
|
||
|
public $word;
|
||
|
|
||
|
/**
|
||
|
* @version
|
||
|
* @Column(type="integer")
|
||
|
*/
|
||
|
public $version;
|
||
|
|
||
|
public function __construct($word)
|
||
|
{
|
||
|
$this->word = $word;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @Entity
|
||
|
* @Table(name="`INDEX`")
|
||
|
* @InheritanceType("JOINED")
|
||
|
* @DiscriminatorColumn(name="discr", type="string")
|
||
|
* @DiscriminatorMap({"like" = "DDC832JoinedIndex", "fuzzy" = "DDC832JoinedTreeIndex"})
|
||
|
*/
|
||
|
class DDC832JoinedIndex
|
||
|
{
|
||
|
/**
|
||
|
* @Id @Column(type="string") @GeneratedValue
|
||
|
*/
|
||
|
public $id;
|
||
|
|
||
|
/** @Column(type="string") */
|
||
|
public $name;
|
||
|
|
||
|
/**
|
||
|
* @version
|
||
|
* @Column(type="integer")
|
||
|
*/
|
||
|
public $version;
|
||
|
|
||
|
public function __construct($name)
|
||
|
{
|
||
|
$this->name = $name;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @Entity
|
||
|
* @Table(name="`TREE_INDEX`")
|
||
|
*/
|
||
|
class DDC832JoinedTreeIndex extends DDC832JoinedIndex
|
||
|
{
|
||
|
/** @Column(type="integer") */
|
||
|
public $lft;
|
||
|
/** @Column(type="integer") */
|
||
|
public $rgt;
|
||
|
|
||
|
public function __construct($name, $lft, $rgt)
|
||
|
{
|
||
|
$this->name = $name;
|
||
|
$this->lft = $lft;
|
||
|
$this->rgt = $rgt;
|
||
|
}
|
||
|
}
|