/**
  * some XMLReaderNode can not be turned into a SimpleXMLElement, this tests how robust XMLReaderNode
  * is for the job.
  *
  * @test
  */
 function asSimpleXMLforElementAndSignificantWhitespace()
 {
     $reader = new XMLReaderStub('<root>
         <!-- <3 <3 love XMLReader::SIGNIFICANT_WHITESPACE (14) <3 <3 -->
     </root>');
     $reader->read();
     // (#1) <root>
     // test asSimpleXML() for XMLReader::ELEMENT
     $this->assertSame(XMLReader::ELEMENT, $reader->nodeType);
     $node = new XMLReaderNode($reader);
     $sxml = $node->getSimpleXMLElement();
     $this->assertInstanceOf('SimpleXMLElement', $sxml);
     $reader->read();
     // (#14) SIGNIFICANT_WHITESPACE
     // test asSimpleXML() for XMLReader::SIGNIFICANT_WHITESPACE
     $this->assertSame(XMLReader::SIGNIFICANT_WHITESPACE, $reader->nodeType);
     $node = new XMLReaderNode($reader);
     $sxml = $node->getSimpleXMLElement();
     $this->assertNull($sxml);
 }
Esempio n. 2
0
 /**
  * @test
  * @dataProvider provideAllFiles
  *
  * @param string $xml
  */
 function readBehavior($xml)
 {
     $reader = new XMLReaderStub($xml);
     $it = new XMLReaderIterator($reader);
     $expected = array();
     while ($reader->read()) {
         $expected[] = XMLReaderNode::dump($reader, true);
     }
     $reader->rewind();
     $index = 0;
     foreach ($it as $index => $node) {
         $this->assertEquals($expected[$index], XMLReaderNode::dump($reader, true));
     }
     $this->assertCount($index + 1, $expected);
 }