helly Sat Jan 10 08:45:11 2004 EDT Added files: /php-src/ext/simplexml/tests 014a.phpt 014b.phpt
Modified files: /php-src/ext/simplexml/tests 014.phpt Log: Update attribute tests. # There is a memory leak with += when accessing the attributes directly # But yet ->elem[$n] is not fails in the engine Index: php-src/ext/simplexml/tests/014.phpt diff -u php-src/ext/simplexml/tests/014.phpt:1.2 php-src/ext/simplexml/tests/014.phpt:1.3 --- php-src/ext/simplexml/tests/014.phpt:1.2 Thu Dec 18 08:35:39 2003 +++ php-src/ext/simplexml/tests/014.phpt Sat Jan 10 08:45:10 2004 @@ -1,5 +1,5 @@ --TEST-- -SimpleXML: adding/removing attributes +SimpleXML: adding/removing attributes (direct) --SKIPIF-- <?php if (!extension_loaded("simplexml")) print "skip"; ?> --FILE-- @@ -7,25 +7,24 @@ $xml =<<<EOF <people> <person name="Joe"></person> - <person name="Boe"></person> </people> EOF; $people = simplexml_load_string($xml); -var_dump($people->person[0]['name']); -var_dump($people->person[0]['age']); -$person = $people->person[0]; +var_dump($people->person['name']); +var_dump($people->person['age']); +$person = $people->person; $person['name'] = "XXX"; -var_dump($people->person[0]['name']); -$people->person[0]['age'] = 30; -var_dump($people->person[0]['age']); -$people->person[0]['age'] += 5; -var_dump($people->person[0]['age']); +var_dump($people->person['name']); +$people->person['age'] = 30; +var_dump($people->person['age']); +$people->person['age'] += 5; +var_dump($people->person['age']); echo "---Unset:---\n"; -unset($people->person[0]['age']); +unset($people->person['age']); echo "---Unset?---\n"; -var_dump($people->person[0]['age']); -var_dump(isset($people->person[0]['age'])); +var_dump($people->person['age']); +var_dump(isset($people->person['age'])); echo "---Done---\n"; ?> --EXPECT-- Index: php-src/ext/simplexml/tests/014a.phpt +++ php-src/ext/simplexml/tests/014a.phpt --TEST-- SimpleXML: adding/removing attributes (single) --SKIPIF-- <?php if (!extension_loaded("simplexml")) print "skip"; ?> --FILE-- <?php $xml =<<<EOF <people> <person name="Joe"></person> </people> EOF; $people = simplexml_load_string($xml); var_dump($people->person[0]['name']); var_dump($people->person[0]['age']); $person = $people->person[0]; $person['name'] = "XXX"; var_dump($people->person[0]['name']); $people->person[0]['age'] = 30; var_dump($people->person[0]['age']); $people->person[0]['age'] += 5; var_dump($people->person[0]['age']); echo "---Unset:---\n"; unset($people->person[0]['age']); echo "---Unset?---\n"; var_dump($people->person[0]['age']); var_dump(isset($people->person[0]['age'])); echo "---Done---\n"; ?> --EXPECT-- string(3) "Joe" NULL string(3) "XXX" string(2) "30" string(2) "35" ---Unset:--- ---Unset?--- NULL bool(false) ---Done--- Index: php-src/ext/simplexml/tests/014b.phpt +++ php-src/ext/simplexml/tests/014b.phpt --TEST-- SimpleXML: adding/removing attributes (second) --SKIPIF-- <?php if (!extension_loaded("simplexml")) print "skip"; ?> --FILE-- <?php $xml =<<<EOF <people> <person name="Joe"></person> <person name="Boe"></person> </people> EOF; $people = simplexml_load_string($xml); var_dump($people->person[0]['name']); var_dump($people->person[1]['age']); $person = $people->person[1]; $person['name'] = "XXX"; var_dump($people->person[1]['name']); $people->person[1]['age'] = 30; var_dump($people->person[1]['age']); $people->person[1]['age'] += 5; var_dump($people->person[1]['age']); echo "---Unset:---\n"; unset($people->person[1]['age']); echo "---Unset?---\n"; var_dump($people->person[1]['age']); var_dump(isset($people->person[1]['age'])); echo "---Done---\n"; ?> --EXPECT-- string(3) "Joe" NULL string(3) "XXX" string(2) "30" string(2) "35" ---Unset:--- ---Unset?--- NULL bool(false) ---Done--- -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php