本文整理汇总了PHP中Zend_XmlRpc_Client::getIntrospector方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_XmlRpc_Client::getIntrospector方法的具体用法?PHP Zend_XmlRpc_Client::getIntrospector怎么用?PHP Zend_XmlRpc_Client::getIntrospector使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_XmlRpc_Client
的用法示例。
在下文中一共展示了Zend_XmlRpc_Client::getIntrospector方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGettingAllMethodSignaturesDegradesToLooping
public function testGettingAllMethodSignaturesDegradesToLooping()
{
// system.listMethods() will return ['foo', 'bar']
$whatListMethodsReturns = array('foo', 'bar');
$response = $this->getServerResponseFor($whatListMethodsReturns);
$this->httpAdapter->setResponse($response);
// system.multicall() will return a fault
$fault = new Zend_XmlRpc_Fault(7, 'bad method');
$xml = $fault->saveXml();
$response = $this->makeHttpResponseFrom($xml);
$this->httpAdapter->addResponse($response);
// system.methodSignature('foo') will return [['int'], ['int', 'string']]
$fooSignatures = array(array('int'), array('int', 'string'));
$response = $this->getServerResponseFor($fooSignatures);
$this->httpAdapter->addResponse($response);
// system.methodSignature('bar') will return [['boolean']]
$barSignatures = array(array('boolean'));
$response = $this->getServerResponseFor($barSignatures);
$this->httpAdapter->addResponse($response);
$i = $this->xmlrpcClient->getIntrospector();
$expected = array('foo' => $fooSignatures, 'bar' => $barSignatures);
$this->assertEquals($expected, $i->getSignatureForEachMethod());
$request = $this->xmlrpcClient->getLastRequest();
$this->assertEquals('system.methodSignature', $request->getMethod());
}
示例2: testGettingAllMethodSignaturesDefaultsToMulticall
public function testGettingAllMethodSignaturesDefaultsToMulticall()
{
// system.listMethods() will return ['foo', 'bar']
$whatListMethodsReturns = array('foo', 'bar');
$response = $this->getServerResponseFor($whatListMethodsReturns);
$this->httpAdapter->setResponse($response);
// system.multicall() will then return [fooSignatures, barSignatures]
$fooSignatures = array(array('int'), array('int', 'string'));
$barSignatures = array(array('boolean'));
$whatMulticallReturns = array($fooSignatures, $barSignatures);
$response = $this->getServerResponseFor($whatMulticallReturns);
$this->httpAdapter->addResponse($response);
$i = $this->xmlrpcClient->getIntrospector();
$expected = array('foo' => $fooSignatures, 'bar' => $barSignatures);
$this->assertEquals($expected, $i->getSignatureForEachMethod());
$request = $this->xmlrpcClient->getLastRequest();
$this->assertEquals('system.multicall', $request->getMethod());
}
示例3: testSettingAndGettingIntrospector
public function testSettingAndGettingIntrospector()
{
$xmlrpcClient = new Zend_XmlRpc_Client('http://foo');
$introspector = new Zend_XmlRpc_Client_ServerIntrospection($xmlrpcClient);
$this->assertNotSame($introspector, $xmlrpcClient->getIntrospector());
$xmlrpcClient->setIntrospector($introspector);
$this->assertSame($introspector, $xmlrpcClient->getIntrospector());
}