1
0
mirror of synced 2025-02-03 05:49:25 +03:00

Simplify stubs used in tests

This commit is contained in:
Alessandro Lai 2017-06-21 13:25:31 +02:00
parent 8b9c29738d
commit ba69cc8f7a
No known key found for this signature in database
GPG Key ID: 5D9C513BE4F5798D
3 changed files with 12 additions and 179 deletions

View File

@ -18,7 +18,8 @@ class Ticket4646InstanceOfAbstractTest extends OrmFunctionalTestCase
public function testInstanceOf() public function testInstanceOf()
{ {
$this->loadData(); $this->_em->persist(new EmployeeTicket4646Abstract());
$this->_em->flush();
$dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646Abstract p $dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646Abstract p
WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646Abstract'; WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646Abstract';
@ -26,23 +27,7 @@ class Ticket4646InstanceOfAbstractTest extends OrmFunctionalTestCase
$result = $query->getResult(); $result = $query->getResult();
$this->assertCount(1, $result); $this->assertCount(1, $result);
$this->assertContainsOnlyInstancesOf(PersonTicket4646Abstract::class, $result);
foreach ($result as $r) {
$this->assertInstanceOf(PersonTicket4646Abstract::class, $r);
$this->assertInstanceOf(EmployeeTicket4646Abstract::class, $r);
$this->assertSame('bar', $r->getName());
}
}
private function loadData()
{
$employee = new EmployeeTicket4646Abstract();
$employee->setName('bar');
$employee->setDepartement('qux');
$this->_em->persist($employee);
$this->_em->flush($employee);
} }
} }
@ -64,25 +49,10 @@ abstract class PersonTicket4646Abstract
*/ */
private $id; private $id;
/**
* @Column(type="string")
*/
private $name;
public function getId() public function getId()
{ {
return $this->id; return $this->id;
} }
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
} }
/** /**
@ -91,18 +61,4 @@ abstract class PersonTicket4646Abstract
*/ */
class EmployeeTicket4646Abstract extends PersonTicket4646Abstract class EmployeeTicket4646Abstract extends PersonTicket4646Abstract
{ {
/**
* @Column(type="string")
*/
private $departement;
public function getDepartement()
{
return $this->departement;
}
public function setDepartement($departement)
{
$this->departement = $departement;
}
} }

View File

@ -19,7 +19,10 @@ class Ticket4646InstanceOfMultiLevelTest extends OrmFunctionalTestCase
public function testInstanceOf() public function testInstanceOf()
{ {
$this->loadData(); $this->_em->persist(new PersonTicket4646MultiLevel());
$this->_em->persist(new EmployeeTicket4646MultiLevel());
$this->_em->persist(new EngineerTicket4646MultiLevel());
$this->_em->flush();
$dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646MultiLevel p $dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646MultiLevel p
WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646MultiLevel'; WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646MultiLevel';
@ -27,40 +30,7 @@ class Ticket4646InstanceOfMultiLevelTest extends OrmFunctionalTestCase
$result = $query->getResult(); $result = $query->getResult();
$this->assertCount(3, $result); $this->assertCount(3, $result);
$this->assertContainsOnlyInstancesOf(PersonTicket4646MultiLevel::class, $result);
foreach ($result as $r) {
$this->assertInstanceOf(PersonTicket4646MultiLevel::class, $r);
if ($r instanceof EngineerTicket4646MultiLevel) {
$this->assertEquals('foobar', $r->getName());
$this->assertEquals('doctrine', $r->getSpecialization());
} elseif ($r instanceof EmployeeTicket4646MultiLevel) {
$this->assertEquals('bar', $r->getName());
$this->assertEquals('qux', $r->getDepartement());
} else {
$this->assertEquals('foo', $r->getName());
}
}
}
private function loadData()
{
$person = new PersonTicket4646MultiLevel();
$person->setName('foo');
$employee = new EmployeeTicket4646MultiLevel();
$employee->setName('bar');
$employee->setDepartement('qux');
$engineer = new EngineerTicket4646MultiLevel();
$engineer->setName('foobar');
$engineer->setDepartement('dep');
$engineer->setSpecialization('doctrine');
$this->_em->persist($person);
$this->_em->persist($employee);
$this->_em->persist($engineer);
$this->_em->flush(array($person, $employee, $engineer));
} }
} }
@ -84,25 +54,10 @@ class PersonTicket4646MultiLevel
*/ */
private $id; private $id;
/**
* @Column(type="string")
*/
private $name;
public function getId() public function getId()
{ {
return $this->id; return $this->id;
} }
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
} }
/** /**
@ -111,20 +66,6 @@ class PersonTicket4646MultiLevel
*/ */
class EmployeeTicket4646MultiLevel extends PersonTicket4646MultiLevel class EmployeeTicket4646MultiLevel extends PersonTicket4646MultiLevel
{ {
/**
* @Column(type="string")
*/
private $departement;
public function getDepartement()
{
return $this->departement;
}
public function setDepartement($departement)
{
$this->departement = $departement;
}
} }
/** /**
@ -133,18 +74,4 @@ class EmployeeTicket4646MultiLevel extends PersonTicket4646MultiLevel
*/ */
class EngineerTicket4646MultiLevel extends EmployeeTicket4646MultiLevel class EngineerTicket4646MultiLevel extends EmployeeTicket4646MultiLevel
{ {
/**
* @Column(type="string")
*/
private $specialization;
public function getSpecialization()
{
return $this->specialization;
}
public function setSpecialization($specialization)
{
$this->specialization = $specialization;
}
} }

View File

@ -18,7 +18,9 @@ class Ticket4646InstanceOfTest extends OrmFunctionalTestCase
public function testInstanceOf() public function testInstanceOf()
{ {
$this->loadData(); $this->_em->persist(new PersonTicket4646());
$this->_em->persist(new EmployeeTicket4646());
$this->_em->flush();
$dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646 p $dql = 'SELECT p FROM Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646 p
WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646'; WHERE p INSTANCE OF Doctrine\Tests\ORM\Functional\Ticket\PersonTicket4646';
@ -26,30 +28,7 @@ class Ticket4646InstanceOfTest extends OrmFunctionalTestCase
$result = $query->getResult(); $result = $query->getResult();
$this->assertCount(2, $result); $this->assertCount(2, $result);
$this->assertContainsOnlyInstancesOf(PersonTicket4646::class, $result);
foreach ($result as $r) {
$this->assertInstanceOf(PersonTicket4646::class, $r);
if ($r instanceof EmployeeTicket4646) {
$this->assertEquals('bar', $r->getName());
} else {
$this->assertEquals('foo', $r->getName());
}
}
}
private function loadData()
{
$person = new PersonTicket4646();
$person->setName('foo');
$employee = new EmployeeTicket4646();
$employee->setName('bar');
$employee->setDepartement('qux');
$this->_em->persist($person);
$this->_em->persist($employee);
$this->_em->flush(array($person, $employee));
} }
} }
@ -72,25 +51,10 @@ class PersonTicket4646
*/ */
private $id; private $id;
/**
* @Column(type="string")
*/
private $name;
public function getId() public function getId()
{ {
return $this->id; return $this->id;
} }
public function getName()
{
return $this->name;
}
public function setName($name)
{
$this->name = $name;
}
} }
/** /**
@ -99,18 +63,4 @@ class PersonTicket4646
*/ */
class EmployeeTicket4646 extends PersonTicket4646 class EmployeeTicket4646 extends PersonTicket4646
{ {
/**
* @Column(type="string")
*/
private $departement;
public function getDepartement()
{
return $this->departement;
}
public function setDepartement($departement)
{
$this->departement = $departement;
}
} }