schema035.phpt 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. --TEST--
  2. SOAP XML Schema 35: Nested complex types (element ref + anonymous type)
  3. --EXTENSIONS--
  4. soap
  5. xml
  6. --FILE--
  7. <?php
  8. include "test_schema.inc";
  9. $schema = <<<EOF
  10. <element name="testType2">
  11. <complexType>
  12. <sequence>
  13. <element name="int" type="int"/>
  14. </sequence>
  15. </complexType>
  16. </element>
  17. <complexType name="testType">
  18. <sequence>
  19. <element name="int" type="int"/>
  20. <element ref="tns:testType2"/>
  21. </sequence>
  22. </complexType>
  23. EOF;
  24. test_schema($schema,'type="tns:testType"',(object)array("int"=>123.5,"testType2"=>array("int"=>123.5)));
  25. echo "ok";
  26. ?>
  27. --EXPECTF--
  28. <?xml version="1.0" encoding="UTF-8"?>
  29. <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://test-uri/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:test><testParam xsi:type="ns1:testType"><int xsi:type="xsd:int">123</int><testType2 xsi:type="ns1:testType2"><int xsi:type="xsd:int">123</int></testType2></testParam></ns1:test></SOAP-ENV:Body></SOAP-ENV:Envelope>
  30. object(stdClass)#%d (2) {
  31. ["int"]=>
  32. int(123)
  33. ["testType2"]=>
  34. object(stdClass)#%d (1) {
  35. ["int"]=>
  36. int(123)
  37. }
  38. }
  39. ok