1--TEST-- 2SOAP Interop Round3 GroupE List 005 (php/wsdl): echoLinkedList (cyclic) 3--SKIPIF-- 4<?php require_once('skipif.inc'); ?> 5--INI-- 6soap.wsdl_cache_enabled=0 7--FILE-- 8<?php 9class SOAPList { 10 function __construct($s, $i, $c) { 11 $this->varString = $s; 12 $this->varInt = $i; 13 $this->child = $c; 14 } 15} 16$struct = new SOAPList('arg1',1,new SOAPList('arg2',2,new SOAPList('arg3',3,NULL))); 17$struct->child->child->child = $struct; 18$client = new SoapClient(dirname(__FILE__)."/round3_groupE_list.wsdl",array("trace"=>1,"exceptions"=>0)); 19$client->echoLinkedList($struct); 20echo $client->__getlastrequest(); 21$HTTP_RAW_POST_DATA = $client->__getlastrequest(); 22include("round3_groupE_list.inc"); 23echo "ok\n"; 24?> 25--EXPECTF-- 26<?xml version="1.0" encoding="UTF-8"?> 27<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/WSDLInteropTestRpcEnc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://soapinterop.org/xsd" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:echoLinkedList><param0 id="ref1" xsi:type="ns2:List"><varInt xsi:type="xsd:int">1</varInt><varString xsi:type="xsd:string">arg1</varString><child xsi:type="ns2:List"><varInt xsi:type="xsd:int">2</varInt><varString xsi:type="xsd:string">arg2</varString><child xsi:type="ns2:List"><varInt xsi:type="xsd:int">3</varInt><varString xsi:type="xsd:string">arg3</varString><child href="#ref1"/></child></child></param0></ns1:echoLinkedList></SOAP-ENV:Body></SOAP-ENV:Envelope> 28<?xml version="1.0" encoding="UTF-8"?> 29<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/WSDLInteropTestRpcEnc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://soapinterop.org/xsd" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:echoLinkedListResponse><return id="ref1" xsi:type="ns2:List"><varInt xsi:type="xsd:int">1</varInt><varString xsi:type="xsd:string">arg1</varString><child xsi:type="ns2:List"><varInt xsi:type="xsd:int">2</varInt><varString xsi:type="xsd:string">arg2</varString><child xsi:type="ns2:List"><varInt xsi:type="xsd:int">3</varInt><varString xsi:type="xsd:string">arg3</varString><child href="#ref1"/></child></child></return></ns1:echoLinkedListResponse></SOAP-ENV:Body></SOAP-ENV:Envelope> 30object(stdClass)#%d (3) { 31 ["varInt"]=> 32 int(1) 33 ["varString"]=> 34 string(4) "arg1" 35 ["child"]=> 36 object(stdClass)#%d (3) { 37 ["varInt"]=> 38 int(2) 39 ["varString"]=> 40 string(4) "arg2" 41 ["child"]=> 42 object(stdClass)#%d (3) { 43 ["varInt"]=> 44 int(3) 45 ["varString"]=> 46 string(4) "arg3" 47 ["child"]=> 48 *RECURSION* 49 } 50 } 51} 52ok 53