eZ\Publish\Core\Repository\Tests\Service\Mock\UserTest::testDeleteUserWithRollback PHP Method

testDeleteUserWithRollback() public method

Test for the deleteUser() method.
    public function testDeleteUserWithRollback()
    {
        $repository = $this->getRepositoryMock();
        $userService = $this->getPartlyMockedUserService(array('loadUser'));
        $contentService = $this->getMock('eZ\\Publish\\API\\Repository\\ContentService');
        $user = $this->getMock('eZ\\Publish\\API\\Repository\\Values\\User\\User');
        $loadedUser = $this->getMock('eZ\\Publish\\API\\Repository\\Values\\User\\User');
        $versionInfo = $this->getMock('eZ\\Publish\\API\\Repository\\Values\\Content\\VersionInfo');
        $contentInfo = $this->getMock('eZ\\Publish\\API\\Repository\\Values\\Content\\ContentInfo');
        $user->expects($this->once())->method('__get')->with('id')->will($this->returnValue(42));
        $versionInfo->expects($this->once())->method('getContentInfo')->will($this->returnValue($contentInfo));
        $loadedUser->expects($this->once())->method('getVersionInfo')->will($this->returnValue($versionInfo));
        $userService->expects($this->once())->method('loadUser')->with(42)->will($this->returnValue($loadedUser));
        $repository->expects($this->once())->method('beginTransaction');
        $contentService->expects($this->once())->method('deleteContent')->with($contentInfo)->will($this->throwException(new \Exception()));
        $repository->expects($this->once())->method('getContentService')->will($this->returnValue($contentService));
        $repository->expects($this->once())->method('rollback');
        /* @var \eZ\Publish\API\Repository\Values\User\User $user */
        $userService->deleteUser($user);
    }