Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
--TEST--
2
PHP Backend XML-RPC server Validator1 test (echoStructTest)
3
--FILE--
4
<?php
5
class TestServer {
6
    /**
7
     * test function
8
     *
9
     * see http://www.xmlrpc.com/validator1Docs
10
     *
11
     * @param array $struct a struct
12
     * @return array result
13
     */
14
    public static function echoStructTest($struct) {
15
        return $struct;
16
    }
17
}
18
 
19
set_include_path(realpath(dirname(__FILE__) . '/../../../../') . PATH_SEPARATOR . get_include_path());
20
require_once 'XML/RPC2/Server.php';
21
$options = array(
22
	'prefix' => 'validator1.',
23
	'backend' => 'Php'
24
);
25
 
26
$server = XML_RPC2_Server::create('TestServer', $options);
27
$GLOBALS['HTTP_RAW_POST_DATA'] = <<<EOS
28
<?xml version="1.0" encoding="iso-8859-1"?>
29
<methodCall>
30
<methodName>validator1.echoStructTest</methodName>
31
<params>
32
 <param>
33
  <value>
34
   <struct>
35
    <member>
36
     <name>moe</name>
37
     <value>
38
      <int>5</int>
39
     </value>
40
    </member>
41
    <member>
42
     <name>larry</name>
43
     <value>
44
      <int>6</int>
45
     </value>
46
    </member>
47
    <member>
48
     <name>curly</name>
49
     <value>
50
      <int>8</int>
51
     </value>
52
    </member>
53
   </struct>
54
  </value>
55
 </param>
56
</params>
57
</methodCall>
58
EOS
59
;
60
$response = $server->getResponse();
61
$result = (XML_RPC2_Backend_Php_Response::decode(simplexml_load_string($response)));
62
var_dump($result);
63
 
64
?>
65
--EXPECT--
66
array(3) {
67
  ["moe"]=>
68
  int(5)
69
  ["larry"]=>
70
  int(6)
71
  ["curly"]=>
72
  int(8)
73
}