xref: /PHP-8.2/ext/soap/tests/schema/schema039.phpt (revision 7f2f0c00)
1--TEST--
2SOAP XML Schema 39: Structure with attributes (attributeGroup)
3--EXTENSIONS--
4soap
5xml
6--FILE--
7<?php
8include "test_schema.inc";
9$schema = <<<EOF
10    <complexType name="testType">
11        <sequence>
12            <element name="str" type="string"/>
13        </sequence>
14        <attributeGroup ref="tns:intGroup"/>
15    </complexType>
16    <attributeGroup name="intGroup">
17        <attribute name="int" type="int"/>
18    </attributeGroup>
19EOF;
20test_schema($schema,'type="tns:testType"',(object)array("str"=>"str","int"=>123.5));
21echo "ok";
22?>
23--EXPECTF--
24<?xml version="1.0" encoding="UTF-8"?>
25<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 int="123" xsi:type="ns1:testType"><str xsi:type="xsd:string">str</str></testParam></ns1:test></SOAP-ENV:Body></SOAP-ENV:Envelope>
26object(stdClass)#%d (2) {
27  ["str"]=>
28  string(3) "str"
29  ["int"]=>
30  int(123)
31}
32ok
33