Annotation of embedaddon/php/ext/soap/tests/bugs/bug43045.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Bug #43045i (SOAP encoding violation on "INF" for type double/float)
3: --SKIPIF--
4: <?php require_once('skipif.inc'); ?>
5: --FILE--
6: <?php
7: function test($x) {
8: return $x;
9: }
10:
11: class TestSoapClient extends SoapClient {
12: function __construct($wsdl, $options) {
13: parent::__construct($wsdl, $options);
14: $this->server = new SoapServer($wsdl, $options);
15: $this->server->addFunction('test');
16: }
17: function __doRequest($request, $location, $action, $version, $one_way = 0) {
18: ob_start();
19: $this->server->handle($request);
20: $response = ob_get_contents();
21: ob_end_clean();
22: return $response;
23:
24: echo $request;
25: return '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
26: xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
27: xmlns:xsd="http://www.w3.org/2001/XMLSchema"
28: soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
29: xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
30: <soap:Body><testResponse xmlns="urn:TestSOAP">
31: <s-gensym3>
32: <doubleInfinity xsi:type="xsd:double">INF</doubleInfinity>
33: </s-gensym3>
34: </testResponse>
35: </soap:Body></soap:Envelope>';
36: }
37: }
38: $client = new TestSoapClient(NULL, array(
39: "location" => "test://",
40: "uri" => 'urn:TestSOAP',
41: "style" => SOAP_RPC,
42: "use" => SOAP_ENCODED
43: ));
44: var_dump($client->test(0.1));
45: var_dump($client->test(NAN));
46: var_dump($response = $client->test(INF));
47: var_dump($response = $client->test(-INF));
48: --EXPECT--
49: float(0.1)
50: float(NAN)
51: float(INF)
52: float(-INF)
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>