summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2004-01-10 13:45:10 +0000
committerMarcus Boerger <helly@php.net>2004-01-10 13:45:10 +0000
commitcc5773e775e15b1800ca1fe388af42afeb1fcc8e (patch)
treec3307b2abaa23618f5d1411d030aa0bfebe5ae3a
parentfffdd9686557074b7982564fa834a4caad5f2498 (diff)
downloadphp-git-cc5773e775e15b1800ca1fe388af42afeb1fcc8e.tar.gz
Update attribute tests.
# There is a memory leak with += when accessing the attributes directly # But yet ->elem[$n] is not fails in the engine
-rw-r--r--ext/simplexml/tests/014.phpt25
-rwxr-xr-xext/simplexml/tests/014a.phpt40
-rwxr-xr-xext/simplexml/tests/014b.phpt41
3 files changed, 93 insertions, 13 deletions
diff --git a/ext/simplexml/tests/014.phpt b/ext/simplexml/tests/014.phpt
index b04003fa24..13fe42b96c 100644
--- a/ext/simplexml/tests/014.phpt
+++ b/ext/simplexml/tests/014.phpt
@@ -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 @@ SimpleXML: adding/removing attributes
$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--
diff --git a/ext/simplexml/tests/014a.phpt b/ext/simplexml/tests/014a.phpt
new file mode 100755
index 0000000000..895917f6ce
--- /dev/null
+++ b/ext/simplexml/tests/014a.phpt
@@ -0,0 +1,40 @@
+--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---
diff --git a/ext/simplexml/tests/014b.phpt b/ext/simplexml/tests/014b.phpt
new file mode 100755
index 0000000000..63882d01e7
--- /dev/null
+++ b/ext/simplexml/tests/014b.phpt
@@ -0,0 +1,41 @@
+--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---