public function testQualifiersOrderDeserialization()
 {
     $snakDeserializerMock = $this->getMock('\\Deserializers\\Deserializer');
     $snakDeserializerMock->expects($this->any())->method('deserialize')->with($this->equalTo(array('snaktype' => 'novalue', 'property' => 'P42')))->will($this->returnValue(new PropertyNoValueSnak(42)));
     $snaksDeserializerMock = $this->getMock('\\Deserializers\\Deserializer');
     $snaksDeserializerMock->expects($this->any())->method('deserialize')->with($this->equalTo(array('P24' => array(array('snaktype' => 'novalue', 'property' => 'P24')), 'P42' => array(array('snaktype' => 'somevalue', 'property' => 'P42'), array('snaktype' => 'novalue', 'property' => 'P42')))))->will($this->returnValue(new SnakList(array(new PropertyNoValueSnak(24), new PropertySomeValueSnak(42), new PropertyNoValueSnak(42)))));
     $referencesDeserializerMock = $this->getMock('\\Deserializers\\Deserializer');
     $statementDeserializer = new StatementDeserializer($snakDeserializerMock, $snaksDeserializerMock, $referencesDeserializerMock);
     $statement = new Statement(new PropertyNoValueSnak(42));
     $statement->setQualifiers(new SnakList(array(new PropertySomeValueSnak(42), new PropertyNoValueSnak(42), new PropertyNoValueSnak(24))));
     $serialization = array('mainsnak' => array('snaktype' => 'novalue', 'property' => 'P42'), 'qualifiers' => array('P24' => array(array('snaktype' => 'novalue', 'property' => 'P24')), 'P42' => array(array('snaktype' => 'somevalue', 'property' => 'P42'), array('snaktype' => 'novalue', 'property' => 'P42'))), 'qualifiers-order' => array('P42', 'P24'), 'type' => 'claim');
     $this->assertEquals($statement->getHash(), $statementDeserializer->deserialize($serialization)->getHash());
 }
Exemplo n.º 2
0
 public function testGuidDoesNotAffectHash()
 {
     $statement0 = new Statement(new PropertyNoValueSnak(42));
     $statement0->setGuid('statement0');
     $statement1 = new Statement(new PropertyNoValueSnak(42));
     $statement1->setGuid('statement1');
     $this->assertEquals($statement0->getHash(), $statement1->getHash());
 }