public function testScanInvalidXml() { $xml = <<<XML <foo>test</bar> XML; $this->assertFalse(XmlParser::getDomDocument($xml)); $this->assertFalse(XmlParser::getSimpleXml($xml)); }
public function testNamespaceValue() { $xml = XmlParser::getSimpleXml(file_get_contents('tests/fixtures/rue89.xml')); $this->assertNotFalse($xml); $namespaces = $xml->getNamespaces(true); $parser = new Rss20(''); $this->assertEquals('Blandine Grosjean', $parser->getNamespaceValue($xml->channel->item[0], $namespaces, 'creator')); $this->assertEquals('Pierre-Carl Langlais', $parser->getNamespaceValue($xml->channel->item[1], $namespaces, 'creator')); }
/** * Parse the OPML file * * @access public * @return array|false */ public function execute() { Logging::setMessage(get_called_class() . ': start importation'); $xml = XmlParser::getSimpleXml(trim($this->content)); if ($xml === false || $xml->getName() !== 'opml' || !isset($xml->body)) { Logging::setMessage(get_called_class() . ': OPML tag not found or malformed XML document'); return false; } $this->parseEntries($xml->body); Logging::setMessage(get_called_class() . ': ' . count($this->items) . ' subscriptions found'); return $this->items; }