Security update for Core, with self-updated composer
[yaffs-website] / vendor / symfony / var-dumper / Tests / Caster / XmlReaderCasterTest.php
diff --git a/vendor/symfony/var-dumper/Tests/Caster/XmlReaderCasterTest.php b/vendor/symfony/var-dumper/Tests/Caster/XmlReaderCasterTest.php
new file mode 100644 (file)
index 0000000..374d298
--- /dev/null
@@ -0,0 +1,248 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\VarDumper\Tests\Caster;
+
+use PHPUnit\Framework\TestCase;
+use Symfony\Component\VarDumper\Test\VarDumperTestTrait;
+
+/**
+ * @author Baptiste Clavié <clavie.b@gmail.com>
+ */
+class XmlReaderCasterTest extends TestCase
+{
+    use VarDumperTestTrait;
+
+    /** @var \XmlReader */
+    private $reader;
+
+    protected function setUp()
+    {
+        $this->reader = new \XmlReader();
+        $this->reader->open(__DIR__.'/../Fixtures/xml_reader.xml');
+    }
+
+    protected function tearDown()
+    {
+        $this->reader->close();
+    }
+
+    public function testParserProperty()
+    {
+        $this->reader->setParserProperty(\XMLReader::SUBST_ENTITIES, true);
+
+        $expectedDump = <<<'EODUMP'
+XMLReader {
+  +nodeType: NONE
+  parserProperties: {
+    SUBST_ENTITIES: true
+     …3
+  }
+   …12
+}
+EODUMP;
+
+        $this->assertDumpMatchesFormat($expectedDump, $this->reader);
+    }
+
+    /**
+     * @dataProvider provideNodes
+     */
+    public function testNodes($seek, $expectedDump)
+    {
+        while ($seek--) {
+            $this->reader->read();
+        }
+        $this->assertDumpMatchesFormat($expectedDump, $this->reader);
+    }
+
+    public function provideNodes()
+    {
+        return array(
+            array(0, <<<'EODUMP'
+XMLReader {
+  +nodeType: NONE
+   …13
+}
+EODUMP
+            ),
+            array(1, <<<'EODUMP'
+XMLReader {
+  +localName: "foo"
+  +nodeType: ELEMENT
+  +baseURI: "%sxml_reader.xml"
+   …11
+}
+EODUMP
+            ),
+            array(2, <<<'EODUMP'
+XMLReader {
+  +localName: "#text"
+  +nodeType: SIGNIFICANT_WHITESPACE
+  +depth: 1
+  +value: """
+    \n
+        
+    """
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(3, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: ELEMENT
+  +depth: 1
+  +baseURI: "%sxml_reader.xml"
+   …10
+}
+EODUMP
+            ),
+            array(4, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: END_ELEMENT
+  +depth: 1
+  +baseURI: "%sxml_reader.xml"
+   …10
+}
+EODUMP
+            ),
+            array(6, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: ELEMENT
+  +depth: 1
+  +isEmptyElement: true
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(9, <<<'EODUMP'
+XMLReader {
+  +localName: "#text"
+  +nodeType: TEXT
+  +depth: 2
+  +value: "With text"
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(12, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: ELEMENT
+  +depth: 1
+  +attributeCount: 2
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(13, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: END_ELEMENT
+  +depth: 1
+  +baseURI: "%sxml_reader.xml"
+   …10
+}
+EODUMP
+            ),
+            array(15, <<<'EODUMP'
+XMLReader {
+  +localName: "bar"
+  +nodeType: ELEMENT
+  +depth: 1
+  +attributeCount: 1
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(16, <<<'EODUMP'
+XMLReader {
+  +localName: "#text"
+  +nodeType: SIGNIFICANT_WHITESPACE
+  +depth: 2
+  +value: """
+    \n
+            
+    """
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(17, <<<'EODUMP'
+XMLReader {
+  +localName: "baz"
+  +prefix: "baz"
+  +nodeType: ELEMENT
+  +depth: 2
+  +namespaceURI: "http://symfony.com"
+  +baseURI: "%sxml_reader.xml"
+   …8
+}
+EODUMP
+            ),
+            array(18, <<<'EODUMP'
+XMLReader {
+  +localName: "baz"
+  +prefix: "baz"
+  +nodeType: END_ELEMENT
+  +depth: 2
+  +namespaceURI: "http://symfony.com"
+  +baseURI: "%sxml_reader.xml"
+   …8
+}
+EODUMP
+            ),
+            array(19, <<<'EODUMP'
+XMLReader {
+  +localName: "#text"
+  +nodeType: SIGNIFICANT_WHITESPACE
+  +depth: 2
+  +value: """
+    \n
+        
+    """
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(21, <<<'EODUMP'
+XMLReader {
+  +localName: "#text"
+  +nodeType: SIGNIFICANT_WHITESPACE
+  +depth: 1
+  +value: "\n"
+  +baseURI: "%sxml_reader.xml"
+   …9
+}
+EODUMP
+            ),
+            array(22, <<<'EODUMP'
+XMLReader {
+  +localName: "foo"
+  +nodeType: END_ELEMENT
+  +baseURI: "%sxml_reader.xml"
+   …11
+}
+EODUMP
+            ),
+        );
+    }
+}