Annotation of embedaddon/php/ext/soap/tests/bugs/bug36629.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #36629 (SoapServer::handle() exits on SOAP faults)
        !             3: --SKIPIF--
        !             4: <?php require_once('skipif.inc'); ?>
        !             5: --FILE--
        !             6: <?php
        !             7: function test1() {
        !             8:   throw new SoapFault("Server", "test1");
        !             9: }
        !            10: function test2() {
        !            11:   return new SoapFault("Server", "test2");
        !            12: }
        !            13: 
        !            14: $server = new soapserver(null,array('uri'=>"http://testuri.org"));
        !            15: $server->addfunction(array("test1","test2"));
        !            16: 
        !            17: $HTTP_RAW_POST_DATA = <<<EOF
        !            18: <?xml version="1.0" encoding="ISO-8859-1"?>
        !            19: <SOAP-ENV:Envelope
        !            20:   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        !            21:   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
        !            22:   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        !            23:   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        !            24:   xmlns:si="http://soapinterop.org/xsd">
        !            25:   <SOAP-ENV:Body>
        !            26:     <ns1:test1 xmlns:ns1="http://testuri.org" />
        !            27:   </SOAP-ENV:Body>
        !            28: </SOAP-ENV:Envelope>
        !            29: EOF;
        !            30: $server->handle($HTTP_RAW_POST_DATA);
        !            31: 
        !            32: $HTTP_RAW_POST_DATA = <<<EOF
        !            33: <?xml version="1.0" encoding="ISO-8859-1"?>
        !            34: <SOAP-ENV:Envelope
        !            35:   SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
        !            36:   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
        !            37:   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        !            38:   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        !            39:   xmlns:si="http://soapinterop.org/xsd">
        !            40:   <SOAP-ENV:Body>
        !            41:     <ns1:test2 xmlns:ns1="http://testuri.org" />
        !            42:   </SOAP-ENV:Body>
        !            43: </SOAP-ENV:Envelope>
        !            44: EOF;
        !            45: $server->handle($HTTP_RAW_POST_DATA);
        !            46: echo "ok\n";
        !            47: ?>
        !            48: --EXPECT--
        !            49: <?xml version="1.0" encoding="UTF-8"?>
        !            50: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>test1</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
        !            51: <?xml version="1.0" encoding="UTF-8"?>
        !            52: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>test2</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
        !            53: ok

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>