1--TEST--
2XMLRPCext Backend XML-RPC client against phpxmlrpc validator1 (manyTypesTest)
3--SKIPIF--
4<?php
5if (!function_exists('xmlrpc_server_create')) {
6    print "Skip XMLRPC extension unavailable";
7}
8if (!function_exists('curl_init')) {
9    print "Skip CURL extension unavailable";
10}
11if (version_compare(PHP_VERSION, '5.2.9', '<')) {
12    print "Skip Will fail because of http://bugs.php.net/bug.php?id=47263";
13}
14?>
15--FILE--
16<?php
17set_include_path(realpath(dirname(__FILE__) . '/../../../../') . PATH_SEPARATOR . get_include_path());
18date_default_timezone_set('UTC');
19require_once 'XML/RPC2/Client.php';
20require_once 'XML/RPC2/Value.php';
21$options = array(
22	'debug' => false,
23	'backend' => 'Xmlrpcext',
24	'prefix' => 'validator1.'
25);
26$client = XML_RPC2_Client::create('http://phpxmlrpc.sourceforge.net/server.php', $options);
27$tmp = "20060116T19:14:03";
28$time = XML_RPC2_Value::createFromNative($tmp, 'datetime');
29$base64 = XML_RPC2_Value::createFromNative('foobar', 'base64');
30$result = $client->manyTypesTest(1, true, 'foo', 3.14159, $time, $base64);
31var_dump($result[0]);
32var_dump($result[1]);
33var_dump($result[2]);
34var_dump($result[3]);
35var_dump($result[4]->scalar);
36var_dump($result[4]->xmlrpc_type);
37var_dump($result[4]->timestamp);
38var_dump($result[5]->scalar);
39var_dump($result[5]->xmlrpc_type);
40
41?>
42--EXPECT--
43int(1)
44bool(true)
45string(3) "foo"
46float(3.14159)
47string(17) "20060116T19:14:03"
48string(8) "datetime"
49int(1137438843)
50string(6) "foobar"
51string(6) "base64"
52