/** * Unserializes a serialized Reference object (if not unserialized already). * * @param array|Reference $reference * @return Reference Reference */ protected function unserializeReference($reference) { if (is_array($reference)) { $reference = $this->deserializerFactory->newReferenceDeserializer()->deserialize($reference); } return $reference; }
/** * @dataProvider referenceProvider */ public function testSnakSerializationRoundtrips(Reference $reference) { $serializerFactory = new SerializerFactory(new DataValueSerializer()); $deserializerFactory = new DeserializerFactory(new DataValueDeserializer(), new BasicEntityIdParser()); $serialization = $serializerFactory->newReferenceSerializer()->serialize($reference); $newReference = $deserializerFactory->newReferenceDeserializer()->deserialize($serialization); $this->assertTrue($reference->equals($newReference)); }