public function testVisit()
{
$visitor = $this->getVisitor();
$generator = $this->getGenerator();
$generator->startDocument(null);
$contentTypeLimitation = new \eZ\Publish\API\Repository\Values\User\Limitation\ContentTypeLimitation();
$contentTypeLimitation->limitationValues = array(1, 2, 3);
$policy = new User\Policy(array('id' => 42, 'roleId' => '84', 'module' => 'content', 'function' => 'delete', 'limitations' => array('Class' => $contentTypeLimitation)));
$this->addRouteExpectation('ezpublish_rest_loadPolicy', array('roleId' => $policy->roleId, 'policyId' => $policy->id), "/user/roles/{$policy->roleId}/policies/{$policy->id}");
$visitor->visit($this->getVisitorMock(), $generator, $policy);
$result = $generator->endDocument(null);
$this->assertNotNull($result);
return $result;
}