Return to bug31695.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / soap / tests / bugs |
1.1 misho 1: --TEST-- 2: Bug #31695 (Cannot redefine endpoint when using WSDL) 3: --SKIPIF-- 4: <?php require_once('skipif.inc'); ?> 5: --FILE-- 6: <?php 7: ini_set("soap.wsdl_cache_enabled", 0); 8: 9: function Test($x) { 10: return $x; 11: } 12: 13: class LocalSoapClient extends SoapClient { 14: function __construct($wsdl, $options=array()) { 15: parent::__construct($wsdl, $options); 16: $this->server = new SoapServer($wsdl, $options); 17: $this->server->addFunction("Test"); 18: } 19: 20: function __doRequest($request, $location, $action, $version, $one_way = 0) { 21: echo "$location\n"; 22: ob_start(); 23: $this->server->handle($request); 24: $response = ob_get_contents(); 25: ob_end_clean(); 26: return $response; 27: } 28: } 29: 30: $client = new LocalSoapClient(dirname(__FILE__)."/bug31695.wsdl"); 31: $client->Test("str"); 32: $client = new LocalSoapClient(dirname(__FILE__)."/bug31695.wsdl", array("location"=>"test://1")); 33: $client->Test("str"); 34: $client->__soapCall("Test", 35: array("arg1"), 36: array("location"=>"test://2")); 37: $old = $client->__setLocation("test://3"); 38: echo "$old\n"; 39: $client->Test("str"); 40: $client->Test("str"); 41: $client->__setLocation($old); 42: $client->Test("str"); 43: $old = $client->__setLocation(); 44: $client->Test("str"); 45: $client->__setLocation($old); 46: $client->Test("str"); 47: $client->__setLocation(null); 48: $client->Test("str"); 49: var_dump($client->__setLocation()); 50: ?> 51: --EXPECT-- 52: test://0 53: test://1 54: test://2 55: test://1 56: test://3 57: test://3 58: test://1 59: test://0 60: test://1 61: test://0 62: NULL