xref: /PHP-8.4/ext/soap/tests/schema/schema035.phpt (revision 7f2f0c00)
1--TEST--
2SOAP XML Schema 35: Nested complex types (element ref + anonymous type)
3--EXTENSIONS--
4soap
5xml
6--FILE--
7<?php
8include "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>
23EOF;
24test_schema($schema,'type="tns:testType"',(object)array("int"=>123.5,"testType2"=>array("int"=>123.5)));
25echo "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>
30object(stdClass)#%d (2) {
31  ["int"]=>
32  int(123)
33  ["testType2"]=>
34  object(stdClass)#%d (1) {
35    ["int"]=>
36    int(123)
37  }
38}
39ok
40