示例#1
0
 public function testAppendingParams()
 {
     $this->serializer->expects($this->once())->method('serialize')->with('methodName', array('p0', 'p1', 'p2', 'p3'))->will($this->returnValue('REQUEST'));
     $this->mockTransport('http://foo.com', 'REQUEST', 'RESPONSE');
     $this->parser->expects($this->once())->method('parse')->with('RESPONSE')->will($this->returnValue('NATIVE VALUE'));
     $this->assertSame(array(), $this->client->getAppendParams());
     $this->client->appendParams(array('p2', 'p3'));
     $this->assertSame(array('p2', 'p3'), $this->client->getAppendParams());
     $this->assertSame('NATIVE VALUE', $this->client->call('methodName', array('p0', 'p1')));
 }
示例#2
0
 /** {@inheritdoc} */
 public function call($methodName, array $params = [])
 {
     if (!is_string($methodName)) {
         throw InvalidArgumentException::expectedParameter(0, 'string', $methodName);
     }
     $params = array_merge($this->prependParams, $params, $this->appendParams);
     $payload = $this->serializer->serialize($methodName, $params);
     $response = $this->transport->send($this->uri, $payload);
     return $this->parser->parse($response);
 }
 public function testEmptyStructMember()
 {
     $string = '<?xml version="1.0" encoding="UTF-8"?>
         <methodResponse>
             <params>
                 <param>
                     <value>
                         <struct>
                             <member>
                                 <name>FIRST</name>
                                 <value></value>
                             </member>
                         </struct>
                     </value>
                 </param>
             </params>
         </methodResponse>';
     $isFault = false;
     $this->assertSame(array('FIRST' => ''), $this->parser->parse($string, $isFault));
     $this->assertFalse($isFault);
 }
示例#4
0
 public function testThrowExceptionWhenIsString()
 {
     $string = 'returned string';
     $this->setExpectedException('fXmlRpc\\Exception\\ParserException', 'Invalid XML. Expected XML, string given: "returned string"');
     $this->parser->parse($string);
 }