public function testGlobalSuccessHandler()
{
$this->client->expects($this->once())->method('call')->with('system.multicall', array(array(array('methodName' => 'method1', 'params' => array('arg11', 'arg12')), array('methodName' => 'method2', 'params' => array('arg21', 'arg22')))))->will($this->returnValue(array('return1', array('faultCode' => 200))));
$individualHandlerResults = array();
$individualHandler = function ($result) use(&$individualHandlerResults) {
$individualHandlerResults[] = $result;
};
$globalHandlerResults = array();
$globalHandler = function ($result) use(&$globalHandlerResults) {
$globalHandlerResults[] = $result;
};
$results = $this->multicallBuilder->addCall('method1', array('arg11', 'arg12'), $individualHandler)->addCall('method2', array('arg21', 'arg22'), $individualHandler)->onSuccess($globalHandler)->execute();
$this->assertSame(array('return1', array('faultCode' => 200)), $results);
$this->assertSame($results, $individualHandlerResults);
$this->assertSame($results, $globalHandlerResults);
}