Annotation of embedaddon/php/ext/soap/tests/classmap003.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: SOAP Classmap 3: encoding of inherited objects
! 3: --SKIPIF--
! 4: <?php require_once('skipif.inc'); ?>
! 5: --FILE--
! 6: <?php
! 7: ini_set("soap.wsdl_cache_enabled",0);
! 8:
! 9: class A {
! 10: public $x;
! 11: function __construct($a){
! 12: $this->x = $a;
! 13: }
! 14: }
! 15:
! 16: class B extends A {
! 17: public $y;
! 18: function __construct($a){
! 19: parent::__construct($a);
! 20: $this->y = $a + 1;
! 21: }
! 22: }
! 23:
! 24: function f(){
! 25: return new B(5);
! 26: }
! 27:
! 28: class LocalSoapClient extends SoapClient {
! 29:
! 30: function __construct($wsdl, $options) {
! 31: parent::__construct($wsdl, $options);
! 32: $this->server = new SoapServer($wsdl, $options);
! 33: $this->server->addFunction("f");
! 34: }
! 35:
! 36: function __doRequest($request, $location, $action, $version, $one_way = 0) {
! 37: ob_start();
! 38: $this->server->handle($request);
! 39: $response = ob_get_contents();
! 40: ob_end_clean();
! 41: return $response;
! 42: }
! 43: }
! 44:
! 45: $client = new LocalSoapClient(dirname(__FILE__)."/classmap003.wsdl",
! 46: array('classmap'=>array('A'=>'A','B'=>'B')));
! 47: print_r($client->f());
! 48: ?>
! 49: --EXPECT--
! 50: B Object
! 51: (
! 52: [y] => 6
! 53: [x] => 5
! 54: )
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>