public function testEncodeAndReturn() { $format = $this->getFormatMock(); $format->expects($this->any())->method('getNames')->will($this->returnValue(array('foo'))); $format->expects($this->once())->method('encode')->will($this->returnCallback(function ($origin, $definition, $stream) { fputs($stream, "bar"); })); $encoder = new Encoder(); $encoder->addFormat($format); $content = $encoder->encode(null, $this->getDefinitionMock(), false, 'foo'); $this->assertEquals('bar', $content); }
/** * @param mixed $object * @param string $type * @param resource|bool $stream * @param string $format * @param array $options * @return string|bool */ public function serialize($object, $type, $stream, $format, array $options = array()) { $definition = $this->resolver->getDefinition($type, $options); return $this->encoder->encode($object, $definition, $stream, $format); }