1
0
mirror of synced 2025-02-03 13:59:27 +03:00
lemartin 7c6c5d87c8
Fix quoting issues related to ticket #6402
Apply quoting strategy to foreign key columns of one-to-one relation so
that correct select statements are generated. And use unquoted column
names in result mapping instead of quoted ones, as consumers (namely
IdentifierFlattener) expect unquoted column names.
2017-04-30 13:51:49 +02:00

67 lines
1.5 KiB
PHP

<?php
namespace Doctrine\Tests\ORM\Functional\Ticket;
use Doctrine\Tests\Models\Quote\Address;
use Doctrine\Tests\Models\Quote\Group;
use Doctrine\Tests\Models\Quote\Phone;
use Doctrine\Tests\Models\Quote\User;
use Doctrine\Tests\OrmFunctionalTestCase;
/**
* @group 6402
*/
class GH6402Test extends OrmFunctionalTestCase
{
protected function setUp()
{
parent::setUp();
try {
$this->setUpEntitySchema([
Address::class,
Group::class,
Phone::class,
User::class,
]);
} catch (\Exception $exception) {
}
}
public function testFind()
{
$id = $this->createAddress();
$address = $this->_em->find(Address::class, $id);
self::assertNotNull($address->user);
}
public function testQuery()
{
$id = $this->createAddress();
$addresses = $this->_em->createQuery("SELECT a FROM " . Address::class . " a WHERE a.id = :id")
->setParameter("id", $id)
->getResult();
self::assertCount(1, $addresses);
self::assertNotNull($addresses[0]->user);
}
private function createAddress()
{
$user = new User();
$user->name = "foo";
$address = new Address();
$address->zip = "bar";
$user->setAddress($address);
$this->_em->persist($user);
$this->_em->flush();
$this->_em->clear();
return $address->id;
}
}