com php-src: added tests for bug #54138: ext/libxml/tests/bug54138.phpt ext/libxml/tests/bug54138_1.phpt ext/libxml/t ests/bug54138_2.phpt
| From: | Anatol Belski | Date: | Mon, 08 Jun 2015 07:59:36 +0000 |
| Subject: | com php-src: added tests for bug #54138: ext/libxml/tests/bug54138.phpt ext/libxml/tests/bug54138_1.phpt ext/libxml/t ests/bug54138_2.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-87090@lists.php.net to get a copy of this message | ||
Commit: a1951c2e0a837dedfc3927817c6057b832692e97
Author: Christoph M. Becker <cmbecker69@gmx.de> Thu, 4 Jun 2015 00:59:41 +0200
Committer: Anatol Belski <ab@php.net> Mon, 8 Jun 2015 09:59:36 +0200
Parents: f661b10536c03f5e7235e644967f3ba8eb33c32c
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=a1951c2e0a837dedfc3927817c6057b832692e97
Log:
added tests for bug #54138
Bugs:
https://bugs.php.net/54138
Changed paths:
A ext/libxml/tests/bug54138.phpt
A ext/libxml/tests/bug54138_1.phpt
A ext/libxml/tests/bug54138_2.phpt
Diff:
diff --git a/ext/libxml/tests/bug54138.phpt b/ext/libxml/tests/bug54138.phpt
new file mode 100644
index 0000000..5a03f2c
--- /dev/null
+++ b/ext/libxml/tests/bug54138.phpt
@@ -0,0 +1,23 @@
+--TEST--
+Bug #54138 - DOMNode::getLineNo() doesn't return line number higher than 65535
+--SKIPIF--
+<?php
+if (!extension_loaded('dom')) die('skip dom extension not available');
+if (!defined('LIBXML_BIGLINES')) die('skip this test requires
LIBXML_BIGLINES');
+?>
+--FILE--
+<?php
+$foos = str_repeat('<foo/>' . PHP_EOL, 65535);
+$xml = <<<XML
+<?xml version="1.0" encoding="UTF-8"?>
+<root>
+$foos
+<bar/>
+</root>
+XML;
+$dom = new DOMDocument();
+$dom->loadXML($xml, LIBXML_BIGLINES);
+var_dump($dom->getElementsByTagName('bar')->item(0)->getLineNo());
+?>
+--EXPECT--
+int(65540)
diff --git a/ext/libxml/tests/bug54138_1.phpt b/ext/libxml/tests/bug54138_1.phpt
new file mode 100644
index 0000000..f0a8a04
--- /dev/null
+++ b/ext/libxml/tests/bug54138_1.phpt
@@ -0,0 +1,24 @@
+--TEST--
+Bug #54138 - DOMNode::getLineNo() doesn't return line number higher than 65535
+--SKIPIF--
+<?php
+if (!extension_loaded('dom')) die('skip dom extension not available');
+if (LIBXML_VERSION >= 20900) die('skip this test is for libxml < 2.9.0 only');
+?>
+--FILE--
+<?php
+define('LIBXML_BIGLINES', 1<<22);
+$foos = str_repeat('<foo/>' . PHP_EOL, 65535);
+$xml = <<<XML
+<?xml version="1.0" encoding="UTF-8"?>
+<root>
+$foos
+<bar/>
+</root>
+XML;
+$dom = new DOMDocument();
+$dom->loadXML($xml, LIBXML_BIGLINES);
+var_dump($dom->getElementsByTagName('bar')->item(0)->getLineNo());
+?>
+--EXPECT--
+int(65535)
diff --git a/ext/libxml/tests/bug54138_2.phpt b/ext/libxml/tests/bug54138_2.phpt
new file mode 100644
index 0000000..b25e451
--- /dev/null
+++ b/ext/libxml/tests/bug54138_2.phpt
@@ -0,0 +1,25 @@
+--TEST--
+Bug #54138 - DOMNode::getLineNo() doesn't return line number higher than 65535
+--SKIPIF--
+<?php
+if (!extension_loaded('dom')) die('skip dom extension not available');
+if (LIBXML_VERSION < 20900) die('skip this test is for libxml >= 2.9.0 only');
+if (defined('LIBXML_BIGLINES')) die('skip this test is for LIBXML_BIGLINES being
undefined');
+?>
+--FILE--
+<?php
+define('LIBXML_BIGLINES', 1<<22);
+$foos = str_repeat('<foo/>' . PHP_EOL, 65535);
+$xml = <<<XML
+<?xml version="1.0" encoding="UTF-8"?>
+<root>
+$foos
+<bar/>
+</root>
+XML;
+$dom = new DOMDocument();
+$dom->loadXML($xml, LIBXML_BIGLINES);
+var_dump($dom->getElementsByTagName('bar')->item(0)->getLineNo());
+?>
+--EXPECT--
+int(65540)