public function testGrabWrongSubtypeReturnsNull() { $fix = new \Doctrine\Tests\Models\Company\CompanyFixContract(); $fix->setFixPrice(2000); $this->_em->persist($fix); $this->_em->flush(); $id = $fix->getId(); $this->assertNull($this->_em->find('Doctrine\\Tests\\Models\\Company\\CompanyFlexContract', $id)); $this->assertNull($this->_em->getReference('Doctrine\\Tests\\Models\\Company\\CompanyFlexContract', $id)); $this->assertNull($this->_em->getPartialReference('Doctrine\\Tests\\Models\\Company\\CompanyFlexContract', $id)); }
public function testPersistChildOfBaseClass() { $this->persistRelatedEmployees(); $fixContract = new \Doctrine\Tests\Models\Company\CompanyFixContract(); $fixContract->setFixPrice(1000); $fixContract->setSalesPerson($this->salesPerson); $this->_em->persist($fixContract); $this->_em->flush(); $this->_em->clear(); $contract = $this->_em->find('Doctrine\\Tests\\Models\\Company\\CompanyFixContract', $fixContract->getId()); $this->assertInstanceOf('Doctrine\\Tests\\Models\\Company\\CompanyFixContract', $contract); $this->assertEquals(1000, $contract->getFixPrice()); $this->assertEquals($this->salesPerson->getId(), $contract->getSalesPerson()->getId()); }
public function testCompanyContract() { $person = new \Doctrine\Tests\Models\Company\CompanyEmployee(); $person->setName('Poor Sales Guy'); $person->setDepartment('Sales'); $person->setSalary(100); $this->_em->persist($person); for ($i = 0; $i < 33; $i++) { $fix = new \Doctrine\Tests\Models\Company\CompanyFixContract(); $fix->setFixPrice(1000); $fix->setSalesPerson($person); $fix->markCompleted(); $this->_em->persist($fix); $flex = new \Doctrine\Tests\Models\Company\CompanyFlexContract(); $flex->setSalesPerson($person); $flex->setHoursWorked(100); $flex->setPricePerHour(100); $flex->markCompleted(); $this->_em->persist($flex); $ultra = new \Doctrine\Tests\Models\Company\CompanyFlexUltraContract(); $ultra->setSalesPerson($person); $ultra->setHoursWorked(150); $ultra->setPricePerHour(150); $ultra->setMaxPrice(7000); $this->_em->persist($ultra); } $this->_em->flush(); $this->_em->clear(); $start = microtime(true); $contracts = $this->_em->getRepository('Doctrine\\Tests\\Models\\Company\\CompanyContract')->findAll(); echo "99 CompanyContract: " . number_format(microtime(true) - $start, 6) . "\n"; $this->assertEquals(99, count($contracts)); $this->_em->clear(); $start = microtime(true); $contracts = $this->_em->getRepository('Doctrine\\Tests\\Models\\Company\\CompanyContract')->findAll(); echo "99 CompanyContract: " . number_format(microtime(true) - $start, 6) . "\n"; $this->assertEquals(99, count($contracts)); }