1--TEST--
2SOAP Interop Round4 GroupH Complex Doc Lit 005 (php/wsdl): echoMultipleFaults1(2)
3--SKIPIF--
4<?php require_once('skipif.inc'); ?>
5--INI--
6precision=14
7soap.wsdl_cache_enabled=0
8--FILE--
9<?php
10class SOAPStruct {
11    function __construct($s, $i, $f) {
12        $this->varString = $s;
13        $this->varInt = $i;
14        $this->varFloat = $f;
15    }
16}
17class BaseStruct {
18    function __construct($f, $s) {
19        $this->structMessage = $f;
20        $this->shortMessage = $s;
21    }
22}
23$s1 = new SOAPStruct('arg1',34,325.325);
24$s2 = new BaseStruct(new SOAPStruct('arg2',34,325.325),12);
25$client = new SoapClient(dirname(__FILE__)."/round4_groupH_complex_doclit.wsdl",array("trace"=>1,"exceptions"=>0));
26$client->echoMultipleFaults1(array("whichFault" => 2,
27                                   "param1"     => $s1,
28                                   "param2"     => $s2));
29echo $client->__getlastrequest();
30$HTTP_RAW_POST_DATA = $client->__getlastrequest();
31include("round4_groupH_complex_doclit.inc");
32echo "ok\n";
33?>
34--EXPECT--
35<?xml version="1.0" encoding="UTF-8"?>
36<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/types/requestresponse" xmlns:ns2="http://soapinterop.org/types"><SOAP-ENV:Body><ns1:echoMultipleFaults1Request><ns1:whichFault>2</ns1:whichFault><ns1:param1><ns2:varString>arg1</ns2:varString><ns2:varInt>34</ns2:varInt><ns2:varFloat>325.325</ns2:varFloat></ns1:param1><ns1:param2><ns2:structMessage><ns2:varString>arg2</ns2:varString><ns2:varInt>34</ns2:varInt><ns2:varFloat>325.325</ns2:varFloat></ns2:structMessage><ns2:shortMessage>12</ns2:shortMessage></ns1:param2></ns1:echoMultipleFaults1Request></SOAP-ENV:Body></SOAP-ENV:Envelope>
37<?xml version="1.0" encoding="UTF-8"?>
38<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/types" xmlns:ns2="http://soapinterop.org/types/part"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring>Fault in response to 'echoMultipleFaults1'.</faultstring><detail><ns2:BaseStructPart><ns1:structMessage><ns1:varString>arg2</ns1:varString><ns1:varInt>34</ns1:varInt><ns1:varFloat>325.325</ns1:varFloat></ns1:structMessage><ns1:shortMessage>12</ns1:shortMessage></ns2:BaseStructPart></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
39ok
40