Do not implicitly set multibulk replies on composable connections.

This should be done externally on the underlying protocol instance.
This commit is contained in:
Daniele Alessandri
2013-02-16 16:24:15 +01:00
parent 8cbcb09c4c
commit fbcfdc343e
2 changed files with 4 additions and 7 deletions
@@ -31,12 +31,8 @@ class ComposableStreamConnection extends StreamConnection implements ComposableC
*/
public function __construct(ConnectionParametersInterface $parameters, ProtocolInterface $protocol = null)
{
$protocol = $protocol ?: new TextProtocol();
$protocol->setOption('iterable_multibulk', $parameters->iterable_multibulk);
$this->mbiterable = null;
$this->protocol = $protocol;
$this->parameters = $this->checkParameters($parameters);
$this->protocol = $protocol ?: new TextProtocol();
}
/**
@@ -134,6 +130,6 @@ class ComposableStreamConnection extends StreamConnection implements ComposableC
*/
public function __sleep()
{
return array_merge(parent::__sleep(), array('protocol'));
return array_diff(array_merge(parent::__sleep(), array('protocol')), array('mbiterable'));
}
}
@@ -74,7 +74,8 @@ class ComposableStreamConnectionTest extends ConnectionTestCase
*/
public function testReadsMultibulkRepliesAsIterators()
{
$connection = $this->getConnection($profile, true, array('iterable_multibulk' => true));
$connection = $this->getConnection($profile, true);
$connection->getProtocol()->setOption('iterable_multibulk', true);
$connection->executeCommand($profile->createCommand('rpush', array('metavars', 'foo', 'hoge', 'lol')));
$connection->writeCommand($profile->createCommand('lrange', array('metavars', 0, -1)));