Example #1
0
    /**
     * Tests Mollom::parseXML().
     */
    function testParseXML()
    {
        $header = '<?xml version="1.0"?>';
        $input = $header . <<<EOF
<response>
  <code>0</code>
  <message>Foo.</message>
  <content>
    <contentId>321</contentId>
    <languages>
      <language>
        <languageCode>en</languageCode>
        <languageScore>1.0</languageScore>
      </language>
      <language>
        <languageCode>de</languageCode>
        <languageScore>0.5</languageScore>
      </language>
    </languages>
  </content>
</response>
EOF;
        $expected = array('code' => 0, 'message' => 'Foo.', 'content' => array('contentId' => 321, 'languages' => array(array('languageCode' => 'en', 'languageScore' => 1.0), array('languageCode' => 'de', 'languageScore' => 0.5))));
        $this->assertEquals($expected, Mollom::parseXML(new SimpleXmlIterator($input)));
        $input = $header . <<<EOF
<response>
  <code>0</code>
  <message></message>
  <site>
    <publicKey>321</publicKey>
    <servers>
      <server>http://foo</server>
      <server>http://bar</server>
    </servers>
  </site>
</response>
EOF;
        $expected = array('code' => 0, 'message' => '', 'site' => array('publicKey' => 321, 'servers' => array('http://foo', 'http://bar')));
        $this->assertEquals($expected, Mollom::parseXML(new SimpleXmlIterator($input)));
    }