]> granicus.if.org Git - php/commitdiff
Add more clone testing
authorMarcus Boerger <helly@php.net>
Tue, 1 Jul 2003 21:27:59 +0000 (21:27 +0000)
committerMarcus Boerger <helly@php.net>
Tue, 1 Jul 2003 21:27:59 +0000 (21:27 +0000)
tests/classes/clone_001.phpt [new file with mode: 0755]
tests/classes/clone_002.phpt [new file with mode: 0755]

diff --git a/tests/classes/clone_001.phpt b/tests/classes/clone_001.phpt
new file mode 100755 (executable)
index 0000000..c116f73
--- /dev/null
@@ -0,0 +1,43 @@
+--TEST--
+ZE2 object cloning, 1
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
+--FILE--
+<?php
+class test {
+       public $p1 = 1;
+       public $p2 = 2;
+       public $p3;
+};
+
+$obj = new test;
+$obj->p2 = 'A';
+$obj->p3 = 'B';
+$copy = $obj->__clone();
+$copy->p3 = 'C';
+echo "Object\n";
+var_dump($obj);
+echo "Clown\n";
+var_dump($copy);
+echo "Done\n";
+?>
+--EXPECT--
+Object
+object(test)#1 (3) {
+  ["p1"]=>
+  int(1)
+  ["p2"]=>
+  string(1) "A"
+  ["p3"]=>
+  string(1) "B"
+}
+Clown
+object(test)#2 (3) {
+  ["p1"]=>
+  int(1)
+  ["p2"]=>
+  string(1) "A"
+  ["p3"]=>
+  string(1) "C"
+}
+Done
diff --git a/tests/classes/clone_002.phpt b/tests/classes/clone_002.phpt
new file mode 100755 (executable)
index 0000000..a29ed76
--- /dev/null
@@ -0,0 +1,45 @@
+--TEST--
+ZE2 object cloning, 1
+--SKIPIF--
+<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
+--FILE--
+<?php
+class test {
+       public $p1 = 1;
+       public $p2 = 2;
+       public $p3;
+       public __clone() {
+       }
+};
+
+$obj = new test;
+$obj->p2 = 'A';
+$obj->p3 = 'B';
+$copy = $obj->__clone();
+$copy->p3 = 'C';
+echo "Object\n";
+var_dump($obj);
+echo "Clown\n";
+var_dump($copy);
+echo "Done\n";
+?>
+--EXPECT--
+Object
+object(test)#1 (3) {
+  ["p1"]=>
+  int(1)
+  ["p2"]=>
+  string(1) "A"
+  ["p3"]=>
+  string(1) "B"
+}
+Clown
+object(test)#2 (3) {
+  ["p1"]=>
+  int(1)
+  ["p2"]=>
+  string(1) "A"
+  ["p3"]=>
+  string(1) "C"
+}
+Done