public function testBrokenRequests()
{
$s = new xmlrpc_server();
+
+ // omitting the 'methodName' tag: not tolerated by the lib anymore
+ $f = '<?xml version="1.0"?>
+<methodCall>
+<params>
+<value><string>system.methodHelp</string></value>
+</params>
+</methodCall>';
+ $r = $s->parserequest($f);
+ $this->assertEquals(15, $r->faultCode());
+
// omitting the 'params' tag: not tolerated by the lib anymore
$f = '<?xml version="1.0"?>
<methodCall>
</methodCall>';
$r = $s->parserequest($f);
$this->assertEquals(15, $r->faultCode());
+
// omitting a 'param' tag
$f = '<?xml version="1.0"?>
<methodCall>
</methodCall>';
$r = $s->parserequest($f);
$this->assertEquals(15, $r->faultCode());
+
// omitting a 'value' tag
$f = '<?xml version="1.0"?>
<methodCall>
public function testBrokenResponses()
{
$m = $this->newRequest('dummy');
+
// omitting the 'params' tag: no more tolerated by the lib...
$f = '<?xml version="1.0"?>
<methodResponse>
+</methodResponse>';
+ $r = $m->parseResponse($f);
+ $this->assertEquals(2, $r->faultCode());
+ $f = '<?xml version="1.0"?>
+<methodResponse>
<param>
<value><string>system.methodHelp</string></value>
</param>
</methodResponse>';
$r = $m->parseResponse($f);
$this->assertEquals(2, $r->faultCode());
+
// omitting the 'param' tag: no more tolerated by the lib...
$f = '<?xml version="1.0"?>
<methodResponse>
<params>
+</params>
+</methodResponse>';
+ $r = $m->parseResponse($f);
+ $this->assertEquals(2, $r->faultCode());
+ $f = '<?xml version="1.0"?>
+<methodResponse>
+<params>
<value><string>system.methodHelp</string></value>
</params>
</methodResponse>';
$r = $m->parseResponse($f);
$this->assertEquals(2, $r->faultCode());
+
// omitting a 'value' tag: KO
$f = '<?xml version="1.0"?>
<methodResponse>