/** * Returns a Serializer that can serialize Query objects. * * @since 1.0 * * @return Serializer */ public function newQuerySerializer() { $dispatchingSerializer = new DispatchingSerializer(); $dispatchingSerializer->addSerializer($this->newDescriptionSerializer()); $dispatchingSerializer->addSerializer($this->newSelectionRequestSerializer()); $dispatchingSerializer->addSerializer($this->newQueryOptionsSerializer()); return new QuerySerializer($dispatchingSerializer); }
public function testAddSerializer() { $serializer = new DispatchingSerializer(array()); $subSerializer = $this->getMock('Serializers\\DispatchableSerializer'); $subSerializer->expects($this->any())->method('isSerializerFor')->will($this->returnValue(true)); $subSerializer->expects($this->any())->method('serialize')->will($this->returnValue(42)); $serializer->addSerializer($subSerializer); $this->assertEquals(42, $serializer->serialize(null)); }