Пример #1
0
 /**
  * @group DDC-130
  */
 public function testDeleteJoinTableRecords()
 {
     #$this->markTestSkipped('Nightmare! friends adds both ID 6-7 and 7-6 into two rows of the join table. How to detect this?');
     $employee1 = new CompanyEmployee();
     $employee1->setName('gblanco');
     $employee1->setSalary(0);
     $employee1->setDepartment('IT');
     $employee2 = new CompanyEmployee();
     $employee2->setName('jwage');
     $employee2->setSalary(0);
     $employee2->setDepartment('IT');
     $employee1->addFriend($employee2);
     $this->_em->persist($employee1);
     $this->_em->persist($employee2);
     $this->_em->flush();
     $employee1Id = $employee1->getId();
     $this->_em->remove($employee1);
     $this->_em->flush();
     $this->assertNull($this->_em->find(get_class($employee1), $employee1Id));
 }
 public function generateFixture()
 {
     $car = new CompanyCar('Caramba');
     $manager1 = new CompanyManager();
     $manager1->setName('Roman B.');
     $manager1->setTitle('Foo');
     $manager1->setDepartment('IT');
     $manager1->setSalary(100000);
     $manager1->setCar($car);
     $person2 = new CompanyEmployee();
     $person2->setName('Benjamin E.');
     $person2->setDepartment('IT');
     $person2->setSalary(200000);
     $person3 = new CompanyEmployee();
     $person3->setName('Guilherme B.');
     $person3->setDepartment('IT2');
     $person3->setSalary(400000);
     $person4 = new CompanyEmployee();
     $person4->setName('Jonathan W.');
     $person4->setDepartment('IT2');
     $person4->setSalary(800000);
     $person2->setSpouse($person3);
     $manager1->addFriend($person4);
     $person2->addFriend($person3);
     $person2->addFriend($person4);
     $person3->addFriend($person4);
     $this->_em->persist($car);
     $this->_em->persist($manager1);
     $this->_em->persist($person2);
     $this->_em->persist($person3);
     $this->_em->persist($person4);
     $this->_em->flush();
     $this->_em->clear();
 }