[PHP-CVS] com php-src: Fixed bug #64677 (execution operator `` stealing surrounding arguments): NEWS Zend/tests/bug64677.phpt Zend/zend_compile.c
Commit:6ed16753c146ea2a06271ac537761430bad3059a Author:Xinchen Hui larue...@php.net Sat, 20 Apr 2013 15:23:49 +0800 Parents: 0704e4badb3abdfbdd5efc2b6d51c8abd6e5629a Branches: PHP-5.5 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=6ed16753c146ea2a06271ac537761430bad3059a Log: Fixed bug #64677 (execution operator `` stealing surrounding arguments) Bugs: https://bugs.php.net/64677 Changed paths: M NEWS A Zend/tests/bug64677.phpt M Zend/zend_compile.c Diff: diff --git a/NEWS b/NEWS index 969780e..15aa0bc 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,10 @@ PHP NEWS ||| ?? ??? 20??, PHP 5.5.0 Beta 4 +- Core: + . Fixed bug #64677 (execution operator `` stealing surrounding arguments). +(Laruence) + - Zip: . Fixed bug #64342 (ZipArchive::addFile() has to check for file existence). (Anatol) diff --git a/Zend/tests/bug64677.phpt b/Zend/tests/bug64677.phpt new file mode 100644 index 000..44a7c5f --- /dev/null +++ b/Zend/tests/bug64677.phpt @@ -0,0 +1,21 @@ +--TEST-- +Bug #64677 (execution operator `` stealing surrounding arguments) +--FILE-- +?PHP +class cat { + public function show_output($prepend, $output = '') { + } +} +$cat = new cat(); +$cat-show_output('Files: ', trim(`cd .`)); // this gives invalid args to shell_exec +$cat-show_output('Files: ', `cd .`); // this causes a segmentation fault +$cat-show_output(`cd .`); // this causes a segmentation fault + +function show_outputa($prepend, $output) { + echo Okey; +} +show_outputa('Files: ', `cd .`); // this works as expected + +? +--EXPECT-- +Okey diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 7680790..3c0d753 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -5702,6 +5702,7 @@ void zend_do_shell_exec(znode *result, const znode *cmd TSRMLS_DC) /* {{{ */ GET_CACHE_SLOT(opline-op1.constant); opline-extended_value = 1; SET_UNUSED(opline-op2); + opline-op2.num = CG(context).nested_calls; GET_NODE(result, opline-result); if (CG(context).nested_calls + 1 CG(active_op_array)-nested_calls) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: fix x64 opcache, still uses fugly fixed addresses, see TODO entry for explanaton: ext/opcache/shared_alloc_win32.c
Commit:14d9f3450b8e9cb41240e2403fdb812782ee7ee6 Author:Pierre Joye pierre@gmail.com Sat, 20 Apr 2013 18:22:39 +0200 Parents: 0704e4badb3abdfbdd5efc2b6d51c8abd6e5629a Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=14d9f3450b8e9cb41240e2403fdb812782ee7ee6 Log: fix x64 opcache, still uses fugly fixed addresses, see TODO entry for explanaton Changed paths: M ext/opcache/shared_alloc_win32.c Diff: diff --git a/ext/opcache/shared_alloc_win32.c b/ext/opcache/shared_alloc_win32.c index 2c32184..fb84857 100644 --- a/ext/opcache/shared_alloc_win32.c +++ b/ext/opcache/shared_alloc_win32.c @@ -177,7 +177,16 @@ static int create_segments(size_t requested_size, zend_shared_segment ***shared_ zend_shared_segment *shared_segment; int map_retries = 0; void *default_mapping_base_set[] = { 0, 0 }; - void *vista_mapping_base_set[] = { (void *)0x2000, (void *)0x2100, (void *)0x3000, (void *)0x3100, (void *)0x5000, 0 }; + /* TODO: + improve fixed addresses on x64. It still makes no sense to do it as Windows addresses are virtual per se and can or should be randomized anyway + through Address Space Layout Radomization (ASLR). We can still let the OS do its job and be sure that each process gets the same address if + desired. Not done yet, @zend refused but did not remember the exact reason, pls add info here if one of you know why :) + */ +#if defined(_WIN64) + void *vista_mapping_base_set[] = { (void *) 0x1000, (void *) 0x2000, (void *) 0x3000, (void *) 0x7000, 0 }; +#else + void *vista_mapping_base_set[] = { (void *) 0x2000, (void *) 0x2100, (void *) 0x3000, (void *) 0x3100, (void *) 0x5000, 0 }; +#endif void **wanted_mapping_base = default_mapping_base_set; TSRMLS_FETCH(); @@ -258,11 +267,6 @@ static int create_segments(size_t requested_size, zend_shared_segment ***shared_ /* Are we running Vista ? */ if (osvi.dwPlatformId == VER_PLATFORM_WIN32_NT osvi.dwMajorVersion == 6) { - /* Assert that platform is 32 bit (for 64 bit we need to test a different set */ - if (si.wProcessorArchitecture != PROCESSOR_ARCHITECTURE_INTEL) { - DebugBreak(); - } - wanted_mapping_base = vista_mapping_base_set; } } while (0); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: Includes 5 new phpTests to check that the error message DOM_NOT_FOUND is properly raised by the method DOMNode::insertBefore(newNode, [refNode]).: ext/dom/tests/DOMDocument_vali
Commit:92bbe6be722209189e6f84b8ea2127949567d95e Author:Antonio Diaz Ruiz dejalat...@gmail.com Mon, 15 Apr 2013 23:30:58 +0200 Committer: Xinchen Hui larue...@php.net Sun, 21 Apr 2013 11:05:59 +0800 Parents: ba292b037f58c6cb0ef090936811cc658eadd26f Branches: PHP-5.4 PHP-5.5 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=92bbe6be722209189e6f84b8ea2127949567d95e Log: Includes 5 new phpTests to check that the error message DOM_NOT_FOUND is properly raised by the method DOMNode::insertBefore(newNode, [refNode]). Each file covers a different test case DOMNode_insertBefore_error2.phpt: refNode is a sibling of the node where newNode wanted to be inserted. DOMNode_insertBefore_error3.phpt: refNode is the parent of the node where newNode wanted to be inserted. DOMNode_insertBefore_error4.phpt: refNode is a brand new node. DOMNode_insertBefore_error5.phpt: refNode is a descendant (not child) of the node where newNode wanted to be inserted. DOMNode_insertBefore_error6.phpt: refNode is the node where newNode wanted to be inserted. Changed paths: M ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt A ext/dom/tests/DOMNode_insertBefore_error2.phpt A ext/dom/tests/DOMNode_insertBefore_error3.phpt A ext/dom/tests/DOMNode_insertBefore_error4.phpt A ext/dom/tests/DOMNode_insertBefore_error5.phpt A ext/dom/tests/DOMNode_insertBefore_error6.phpt Diff: diff --git a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt index d0cea29..4dfafa2 100644 --- a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt +++ b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt @@ -13,7 +13,7 @@ require_once('skipif.inc'); require_once('dom_test.inc'); chdir(__DIR__); -$XMLStringGood = file_get_contents('note.xml'); +$XMLStringGood = file_get_contents(dirname(__FILE__).'/note.xml'); $dom = new DOMDocument; $dom-resolveExternals = TRUE; diff --git a/ext/dom/tests/DOMNode_insertBefore_error2.phpt b/ext/dom/tests/DOMNode_insertBefore_error2.phpt new file mode 100644 index 000..5d389f5 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error2.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a sibling +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$new_node !== false'); + +// getting a sibling as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(1); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error3.phpt b/ext/dom/tests/DOMNode_insertBefore_error3.phpt new file mode 100644 index 000..0d70a56 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error3.phpt @@ -0,0 +1,39 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when refnode is the parent node +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$new_node !== false'); + +// getting the parent node as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(0)-parentNode; +assert('!is_null($ref_node)'); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error4.phpt b/ext/dom/tests/DOMNode_insertBefore_error4.phpt new file mode 100644 index 000..d063c54 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error4.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a brand
[PHP-CVS] com php-src: Includes 5 new phpTests to check that the error message DOM_NOT_FOUND is properly raised by the method DOMNode::insertBefore(newNode, [refNode]).: ext/dom/tests/DOMDocument_vali
Commit:9bf80bc29419b265384188b4c90e528d7203b795 Author:Antonio Diaz Ruiz dejalat...@gmail.com Mon, 15 Apr 2013 23:30:58 +0200 Parents: 279285598d79384143ef350f76192c816061ca7c Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=9bf80bc29419b265384188b4c90e528d7203b795 Log: Includes 5 new phpTests to check that the error message DOM_NOT_FOUND is properly raised by the method DOMNode::insertBefore(newNode, [refNode]). Each file covers a different test case DOMNode_insertBefore_error2.phpt: refNode is a sibling of the node where newNode wanted to be inserted. DOMNode_insertBefore_error3.phpt: refNode is the parent of the node where newNode wanted to be inserted. DOMNode_insertBefore_error4.phpt: refNode is a brand new node. DOMNode_insertBefore_error5.phpt: refNode is a descendant (not child) of the node where newNode wanted to be inserted. DOMNode_insertBefore_error6.phpt: refNode is the node where newNode wanted to be inserted. Changed paths: M ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt A ext/dom/tests/DOMNode_insertBefore_error2.phpt A ext/dom/tests/DOMNode_insertBefore_error3.phpt A ext/dom/tests/DOMNode_insertBefore_error4.phpt A ext/dom/tests/DOMNode_insertBefore_error5.phpt A ext/dom/tests/DOMNode_insertBefore_error6.phpt Diff: diff --git a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt index d0cea29..4dfafa2 100644 --- a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt +++ b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt @@ -13,7 +13,7 @@ require_once('skipif.inc'); require_once('dom_test.inc'); chdir(__DIR__); -$XMLStringGood = file_get_contents('note.xml'); +$XMLStringGood = file_get_contents(dirname(__FILE__).'/note.xml'); $dom = new DOMDocument; $dom-resolveExternals = TRUE; diff --git a/ext/dom/tests/DOMNode_insertBefore_error2.phpt b/ext/dom/tests/DOMNode_insertBefore_error2.phpt new file mode 100644 index 000..5d389f5 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error2.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a sibling +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$new_node !== false'); + +// getting a sibling as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(1); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error3.phpt b/ext/dom/tests/DOMNode_insertBefore_error3.phpt new file mode 100644 index 000..0d70a56 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error3.phpt @@ -0,0 +1,39 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when refnode is the parent node +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$new_node !== false'); + +// getting the parent node as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(0)-parentNode; +assert('!is_null($ref_node)'); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error4.phpt b/ext/dom/tests/DOMNode_insertBefore_error4.phpt new file mode 100644 index 000..d063c54 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error4.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a brand new node +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI--
[PHP-CVS] com php-src: Using absolute path to get the file note.xml: ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt
Commit:8a019f3882ad593863ade742b13fc4e26ad80659 Author:Antonio Diaz Ruiz dejalat...@gmail.com Wed, 17 Apr 2013 22:30:04 +0200 Parents: b41145bc5c457d9713fe8d48befc6e6470903313 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=8a019f3882ad593863ade742b13fc4e26ad80659 Log: Using absolute path to get the file note.xml Changed paths: M ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt Diff: diff --git a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt index d0cea29..4dfafa2 100644 --- a/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt +++ b/ext/dom/tests/DOMDocument_validate_on_parse_variation.phpt @@ -13,7 +13,7 @@ require_once('skipif.inc'); require_once('dom_test.inc'); chdir(__DIR__); -$XMLStringGood = file_get_contents('note.xml'); +$XMLStringGood = file_get_contents(dirname(__FILE__).'/note.xml'); $dom = new DOMDocument; $dom-resolveExternals = TRUE; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: Fixs the name of the variable in the assertion: ext/dom/tests/DOMNode_insertBefore_error2.phpt ext/dom/tests/DOMNode_insertBefore_error3.phpt ext/dom/tests/DOMNode_insertBefore_
Commit:4ee47678a0a0c9e17c5afaa7852213644926609d Author:Antonio Diaz Ruiz dejalat...@gmail.com Wed, 17 Apr 2013 23:06:36 +0200 Parents: 8a019f3882ad593863ade742b13fc4e26ad80659 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=4ee47678a0a0c9e17c5afaa7852213644926609d Log: Fixs the name of the variable in the assertion Changed paths: M ext/dom/tests/DOMNode_insertBefore_error2.phpt M ext/dom/tests/DOMNode_insertBefore_error3.phpt M ext/dom/tests/DOMNode_insertBefore_error4.phpt M ext/dom/tests/DOMNode_insertBefore_error5.phpt M ext/dom/tests/DOMNode_insertBefore_error6.phpt Diff: diff --git a/ext/dom/tests/DOMNode_insertBefore_error2.phpt b/ext/dom/tests/DOMNode_insertBefore_error2.phpt index 13dd3f3..5d389f5 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error2.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error2.phpt @@ -21,7 +21,7 @@ $parent_node = $dom-getElementsByTagName(book)-item(0); assert('!is_null($parent_node)'); $new_node = $dom-createElement('newnode'); -assert('$doc !== false'); +assert('$new_node !== false'); // getting a sibling as reference node to insert diff --git a/ext/dom/tests/DOMNode_insertBefore_error3.phpt b/ext/dom/tests/DOMNode_insertBefore_error3.phpt index 3880d76..0d70a56 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error3.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error3.phpt @@ -21,7 +21,7 @@ $parent_node = $dom-getElementsByTagName(book)-item(0); assert('!is_null($parent_node)'); $new_node = $dom-createElement('newnode'); -assert('$doc !== false'); +assert('$new_node !== false'); // getting the parent node as reference node to insert diff --git a/ext/dom/tests/DOMNode_insertBefore_error4.phpt b/ext/dom/tests/DOMNode_insertBefore_error4.phpt index eb84b46..d063c54 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error4.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error4.phpt @@ -21,7 +21,7 @@ $parent_node = $dom-getElementsByTagName(book)-item(0); assert('!is_null($parent_node)'); $new_node = $dom-createElement('newnode'); -assert('$doc !== false'); +assert('$new_node !== false'); // could be a brand new node diff --git a/ext/dom/tests/DOMNode_insertBefore_error5.phpt b/ext/dom/tests/DOMNode_insertBefore_error5.phpt index ec985c3..36cc557 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error5.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error5.phpt @@ -21,7 +21,7 @@ $parent_node = $dom-getElementsByTagName(book)-item(0); assert('!is_null($parent_node)'); $new_node = $dom-createElement('newnode'); -assert('$doc !== false'); +assert('$new_node !== false'); // creating a new node (descendant) and getting it as the refnode diff --git a/ext/dom/tests/DOMNode_insertBefore_error6.phpt b/ext/dom/tests/DOMNode_insertBefore_error6.phpt index 688c722..1fb3a96 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error6.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error6.phpt @@ -22,7 +22,7 @@ assert('!is_null($parent_node)'); $ref_node = $parent_node; $new_node = $dom-createElement('newnode'); -assert('$doc !== false'); +assert('$new_node !== false'); try { $parent_node-insertBefore($new_node, $ref_node); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: Fix the path of the book.xml file: ext/dom/tests/DOMNode_insertBefore_error2.phpt ext/dom/tests/DOMNode_insertBefore_error3.phpt ext/dom/tests/DOMNode_insertBefore_error4.phpt e
Commit:b41145bc5c457d9713fe8d48befc6e6470903313 Author:Antonio Diaz Ruiz dejalat...@gmail.com Wed, 17 Apr 2013 22:09:05 +0200 Parents: a67ce3026218f8428d18b8e00fc8ba760ec8b096 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=b41145bc5c457d9713fe8d48befc6e6470903313 Log: Fix the path of the book.xml file Changed paths: M ext/dom/tests/DOMNode_insertBefore_error2.phpt M ext/dom/tests/DOMNode_insertBefore_error3.phpt M ext/dom/tests/DOMNode_insertBefore_error4.phpt M ext/dom/tests/DOMNode_insertBefore_error5.phpt M ext/dom/tests/DOMNode_insertBefore_error6.phpt Diff: diff --git a/ext/dom/tests/DOMNode_insertBefore_error2.phpt b/ext/dom/tests/DOMNode_insertBefore_error2.phpt index eb0c691..13dd3f3 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error2.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error2.phpt @@ -14,7 +14,7 @@ assert.bail=true ?php $dom = new DOMDocument(); -$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); assert('$doc === true'); $parent_node = $dom-getElementsByTagName(book)-item(0); diff --git a/ext/dom/tests/DOMNode_insertBefore_error3.phpt b/ext/dom/tests/DOMNode_insertBefore_error3.phpt index fcb7f8c..3880d76 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error3.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error3.phpt @@ -14,7 +14,7 @@ assert.bail=true ?php $dom = new DOMDocument(); -$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); assert('$doc === true'); $parent_node = $dom-getElementsByTagName(book)-item(0); diff --git a/ext/dom/tests/DOMNode_insertBefore_error4.phpt b/ext/dom/tests/DOMNode_insertBefore_error4.phpt index 4a1ec96..eb84b46 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error4.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error4.phpt @@ -14,7 +14,7 @@ assert.bail=true ?php $dom = new DOMDocument(); -$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); assert('$doc === true'); $parent_node = $dom-getElementsByTagName(book)-item(0); diff --git a/ext/dom/tests/DOMNode_insertBefore_error5.phpt b/ext/dom/tests/DOMNode_insertBefore_error5.phpt index 6474624..ec985c3 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error5.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error5.phpt @@ -14,7 +14,7 @@ assert.bail=true ?php $dom = new DOMDocument(); -$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); assert('$doc === true'); $parent_node = $dom-getElementsByTagName(book)-item(0); diff --git a/ext/dom/tests/DOMNode_insertBefore_error6.phpt b/ext/dom/tests/DOMNode_insertBefore_error6.phpt index 77baffa..688c722 100644 --- a/ext/dom/tests/DOMNode_insertBefore_error6.phpt +++ b/ext/dom/tests/DOMNode_insertBefore_error6.phpt @@ -14,7 +14,7 @@ assert.bail=true ?php $dom = new DOMDocument(); -$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +$doc = $dom-load(dirname(__FILE__) . /book.xml, LIBXML_NOBLANKS); assert('$doc === true'); $parent_node = $dom-getElementsByTagName(book)-item(0); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: PHP tests to check the DOM_NOT_FOUND error message is properly raised by the DOMNode::insertBefore method: ext/dom/tests/DOMNode_insertBefore_error2.phpt ext/dom/tests/DOMNode_i
Commit:a67ce3026218f8428d18b8e00fc8ba760ec8b096 Author:Antonio Diaz Ruiz dejalat...@gmail.com Mon, 15 Apr 2013 23:30:58 +0200 Parents: 279285598d79384143ef350f76192c816061ca7c Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=a67ce3026218f8428d18b8e00fc8ba760ec8b096 Log: PHP tests to check the DOM_NOT_FOUND error message is properly raised by the DOMNode::insertBefore method Changed paths: A ext/dom/tests/DOMNode_insertBefore_error2.phpt A ext/dom/tests/DOMNode_insertBefore_error3.phpt A ext/dom/tests/DOMNode_insertBefore_error4.phpt A ext/dom/tests/DOMNode_insertBefore_error5.phpt A ext/dom/tests/DOMNode_insertBefore_error6.phpt Diff: diff --git a/ext/dom/tests/DOMNode_insertBefore_error2.phpt b/ext/dom/tests/DOMNode_insertBefore_error2.phpt new file mode 100644 index 000..eb0c691 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error2.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a sibling +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$doc !== false'); + +// getting a sibling as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(1); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error3.phpt b/ext/dom/tests/DOMNode_insertBefore_error3.phpt new file mode 100644 index 000..fcb7f8c --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error3.phpt @@ -0,0 +1,39 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when refnode is the parent node +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$doc !== false'); + +// getting the parent node as reference node to insert + +$ref_node = $dom-getElementsByTagName(book)-item(0)-parentNode; +assert('!is_null($ref_node)'); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error4.phpt b/ext/dom/tests/DOMNode_insertBefore_error4.phpt new file mode 100644 index 000..4a1ec96 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error4.phpt @@ -0,0 +1,38 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a brand new node +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument(); + +$doc = $dom-load(book.xml, LIBXML_NOBLANKS); +assert('$doc === true'); + +$parent_node = $dom-getElementsByTagName(book)-item(0); +assert('!is_null($parent_node)'); + +$new_node = $dom-createElement('newnode'); +assert('$doc !== false'); + +// could be a brand new node + +$ref_node = $dom-createElement('newnode2'); + +try { +$parent_node-insertBefore($new_node, $ref_node); +} catch(DOMException $e) { + echo $e-getMessage(); +} + +? +--EXPECT-- +Not Found Error diff --git a/ext/dom/tests/DOMNode_insertBefore_error5.phpt b/ext/dom/tests/DOMNode_insertBefore_error5.phpt new file mode 100644 index 000..6474624 --- /dev/null +++ b/ext/dom/tests/DOMNode_insertBefore_error5.phpt @@ -0,0 +1,40 @@ +--TEST-- +Test DOMNode::insertBefore() check the error code DOM_NOT_FOUND is raised +--DESCRIPTION-- +DOMNode::insertBefore(newNode, [refNode]) +DOM_NOT_FOUND is raised if refnode is not a child +This test checks the error message is raised when the refnode is a descendant but not a child +--CREDITS-- +Antonio Diaz Ruiz dejalat...@gmail.com +--INI-- +assert.bail=true +--SKIPIF-- +?php include('skipif.inc'); ? +--FILE-- +?php +$dom = new DOMDocument();