*/
public function getSingleHttpTestMethods()
{
- $unsafeMethods = array('testHttps', 'testCatchExceptions', 'testUtf8Method', 'testServerComments', 'testExoticCharsetsRequests',
- 'testExoticCharsetsRequests2', 'testExoticCharsetsRequests3',
- // @todo the following are currently not compatible w Digest Auth (most likely because of client copy) and should be fixed
- 'testcatchWarnings', 'testWrappedMethodAsSource', 'testTransferOfObjectViaWrapping'
+ $unsafeMethods = array(
+ 'testCatchExceptions', 'testUtf8Method', 'testServerComments',
+ 'testExoticCharsetsRequests', 'testExoticCharsetsRequests2', 'testExoticCharsetsRequests3',
);
$methods = array();
$this->$method();
}
+ /**
+ * @dataProvider getSingleHttpTestMethods
+ * @param string $method
+ */
+ public function testHttp10Curl($method)
+ {
+ if(!function_exists('curl_init'))
+ {
+ $this->markTestSkipped('CURL missing: cannot test http 1.1');
+ return;
+ }
+
+ $this->method = 'http10'; // not an error the double assignment!
+ $this->client->method = 'http10';
+ $this->client->keepalive = false;
+ $this->client->setUseCurl(\PhpXmlRpc\Client::USE_CURL_ALWAYS);
+
+ $this->$method();
+ }
+
/**
* @dataProvider getSingleHttpTestMethods
* @param string $method
$this->$method();
}
+ /**
+ * @dataProvider getSingleHttpTestMethods
+ * @param string $method
+ */
+ public function testHttpsSocket($method)
+ {
+ if ($this->args['HTTPSSERVER'] == '')
+ {
+ $this->markTestSkipped('HTTPS SERVER definition missing: cannot test https');
+ return;
+ }
+
+ $this->client->server = $this->args['HTTPSSERVER'];
+ $this->method = 'https';
+ $this->client->method = 'https';
+ $this->client->path = $this->args['HTTPSURI'];
+ $this->client->setSSLVerifyPeer(!$this->args['HTTPSIGNOREPEER']);
+ $this->client->setSSLVerifyHost($this->args['HTTPSVERIFYHOST']);
+ $this->client->setSSLVersion($this->args['SSLVERSION']);
+ $this->client->setUseCurl(\PhpXmlRpc\Client::USE_CURL_NEVER);
+
+ $this->$method();
+ }
+
/**
* @dataProvider getSingleHttpTestMethods
* @param string $method