Doctrine\SkeletonMapper\Tests\Functional\BaseImplementationTest::testReferenceMany PHP Метод

testReferenceMany() публичный Метод

public testReferenceMany ( )
    public function testReferenceMany()
    {
        $adminGroup = new Group('Admin');
        $techGroup = new Group('Tech');
        $user = $this->createTestObject();
        $this->objectManager->persist($adminGroup);
        $this->objectManager->persist($techGroup);
        $this->objectManager->persist($user);
        $user->setUsername('ryanweaver');
        $user->addGroup($adminGroup);
        $user->addGroup($techGroup);
        $this->objectManager->flush();
        $this->objectManager->clear();
        $user = $this->objectManager->find($this->userClassName, $user->getId());
        $this->assertCount(2, $user->getGroups());
        $groups = $user->getGroups();
        $this->assertEquals('Admin', $groups[0]->getName());
        $this->assertEquals('Tech', $groups[1]->getName());
        $moderatorGroup = new Group('Moderator');
        $user->addGroup($moderatorGroup);
        $this->objectManager->persist($moderatorGroup);
        $this->objectManager->flush();
        $this->objectManager->clear();
        $user = $this->objectManager->find($this->userClassName, $user->getId());
        $this->assertCount(3, $user->getGroups());
        $this->assertEquals('Moderator', $groups[2]->getName());
    }