summaryrefslogtreecommitdiff
path: root/ext/xmlreader/tests
diff options
context:
space:
mode:
Diffstat (limited to 'ext/xmlreader/tests')
-rw-r--r--ext/xmlreader/tests/011.phpt34
-rwxr-xr-xext/xmlreader/tests/012.dtd2
-rwxr-xr-xext/xmlreader/tests/012.phpt69
-rwxr-xr-xext/xmlreader/tests/012.xml3
-rw-r--r--ext/xmlreader/tests/bug36743.phpt25
5 files changed, 133 insertions, 0 deletions
diff --git a/ext/xmlreader/tests/011.phpt b/ext/xmlreader/tests/011.phpt
new file mode 100644
index 000000000..be31bbe47
--- /dev/null
+++ b/ext/xmlreader/tests/011.phpt
@@ -0,0 +1,34 @@
+--TEST--
+XMLReader: libxml2 XML Reader, string data
+--SKIPIF--
+<?php if (!extension_loaded("xmlreader")) print "skip";
+$reader = new XMLReader();
+if (!method_exists($reader, 'readInnerXml')) print "skip";
+?>
+--FILE--
+<?php
+/* $Id: 011.phpt,v 1.2.2.2 2006/03/30 21:47:21 helly Exp $ */
+
+$xmlstring = '<?xml version="1.0" encoding="UTF-8"?>
+<books><book>test</book></books>';
+
+$reader = new XMLReader();
+$reader->XML($xmlstring);
+$reader->read();
+echo $reader->readInnerXml();
+echo "\n";
+$reader->close();
+
+
+$reader = new XMLReader();
+$reader->XML($xmlstring);
+$reader->read();
+echo $reader->readOuterXml();
+echo "\n";
+$reader->close();
+?>
+===DONE===
+--EXPECT--
+<book>test</book>
+<books><book>test</book></books>
+===DONE===
diff --git a/ext/xmlreader/tests/012.dtd b/ext/xmlreader/tests/012.dtd
new file mode 100755
index 000000000..b65412af0
--- /dev/null
+++ b/ext/xmlreader/tests/012.dtd
@@ -0,0 +1,2 @@
+<!ELEMENT foo EMPTY>
+<!ATTLIST foo bar CDATA '' baz CDATA ''>
diff --git a/ext/xmlreader/tests/012.phpt b/ext/xmlreader/tests/012.phpt
new file mode 100755
index 000000000..ccd9d3b0b
--- /dev/null
+++ b/ext/xmlreader/tests/012.phpt
@@ -0,0 +1,69 @@
+--TEST--
+XMLReader: accessing empty and non existing attributes
+--SKIPIF--
+<?php if (!extension_loaded("xmlreader")) print "skip"; ?>
+--FILE--
+<?php
+/* $Id: 012.phpt,v 1.1.2.2 2006/03/30 21:47:21 helly Exp $ */
+
+$xmlstring =<<<EOF
+<?xml version="1.0" encoding="UTF-8"?>
+<foo bar=""/>
+EOF;
+
+$reader = new XMLReader();
+$reader->XML($xmlstring);
+$reader->read();
+var_dump($reader->getAttribute('bar'));
+var_dump($reader->getAttribute('baz'));
+$reader->close();
+
+$xmlstring =<<<EOF
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE foo SYSTEM "012.dtd">
+<foo bar=""/>
+EOF;
+
+$xmlstring = str_replace('012.dtd', dirname(__FILE__).'/012.dtd', $xmlstring);
+
+$reader = new XMLReader();
+$reader->XML($xmlstring);
+$reader->setParserProperty(XMLReader::DEFAULTATTRS, true);
+while($reader->read() && $reader->nodeType != XMLReader::ELEMENT);
+var_dump($reader->getAttribute('bar'));
+var_dump($reader->getAttribute('baz'));
+$reader->close();
+
+?>
+===FILE===
+<?php
+
+$reader = new XMLReader();
+$reader->open(dirname(__FILE__) . '/012.xml');
+//$reader->setParserProperty(XMLReader::DEFAULTATTRS, true);
+while($reader->read() && $reader->nodeType != XMLReader::ELEMENT);
+var_dump($reader->getAttribute('bar'));
+var_dump($reader->getAttribute('baz'));
+$reader->close();
+
+$reader = new XMLReader();
+$reader->open(dirname(__FILE__) . '/012.xml');
+$reader->setParserProperty(XMLReader::DEFAULTATTRS, true);
+while($reader->read() && $reader->nodeType != XMLReader::ELEMENT);
+var_dump($reader->getAttribute('bar'));
+var_dump($reader->getAttribute('baz'));
+$reader->close();
+
+?>
+===DONE===
+--EXPECT--
+string(0) ""
+NULL
+string(0) ""
+string(0) ""
+===FILE===
+string(0) ""
+NULL
+string(0) ""
+string(0) ""
+===DONE===
diff --git a/ext/xmlreader/tests/012.xml b/ext/xmlreader/tests/012.xml
new file mode 100755
index 000000000..5012bd5ef
--- /dev/null
+++ b/ext/xmlreader/tests/012.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE foo SYSTEM "012.dtd">
+<foo bar=""/>
diff --git a/ext/xmlreader/tests/bug36743.phpt b/ext/xmlreader/tests/bug36743.phpt
new file mode 100644
index 000000000..45747d49f
--- /dev/null
+++ b/ext/xmlreader/tests/bug36743.phpt
@@ -0,0 +1,25 @@
+--TEST--
+Bug #36743 (In a class extending XMLReader array properties are not writable)
+--FILE--
+<?php
+
+class Test extends XMLReader
+{
+ private $testArr = array();
+ public function __construct()
+ {
+ $this->testArr[] = 1;
+ var_dump($this->testArr);
+ }
+}
+
+$t = new test;
+
+echo "Done\n";
+?>
+--EXPECT--
+array(1) {
+ [0]=>
+ int(1)
+}
+Done