public function testParse()
{
$inputArray = array('limitations' => array('limitation' => array(array('_identifier' => 'Class', 'values' => array('ref' => array(array('_href' => 1), array('_href' => 2), array('_href' => 3)))))));
$policyUpdate = $this->getParser();
$result = $policyUpdate->parse($inputArray, $this->getParsingDispatcherMock());
$this->assertInstanceOf('\\eZ\\Publish\\API\\Repository\\Values\\User\\PolicyUpdateStruct', $result, 'PolicyUpdateStruct not created correctly.');
$parsedLimitations = $result->getLimitations();
$this->assertInternalType('array', $parsedLimitations, 'PolicyUpdateStruct limitations not created correctly');
$this->assertCount(1, $parsedLimitations, 'PolicyUpdateStruct limitations not created correctly');
$this->assertInstanceOf('\\eZ\\Publish\\API\\Repository\\Values\\User\\Limitation', $parsedLimitations['Class'], 'Limitation not created correctly.');
$this->assertEquals('Class', $parsedLimitations['Class']->getIdentifier(), 'Limitation identifier not created correctly.');
$this->assertEquals(array(1, 2, 3), $parsedLimitations['Class']->limitationValues, 'Limitation values not created correctly.');
}