From c4dd7a1a684490673e25aaf4fabec5df138854c4 Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Thu, 14 Mar 2013 05:42:27 +0000 Subject: Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2. --- ext/spl/tests/arrayObject___construct_basic2.phpt | 104 ++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 ext/spl/tests/arrayObject___construct_basic2.phpt (limited to 'ext/spl/tests/arrayObject___construct_basic2.phpt') diff --git a/ext/spl/tests/arrayObject___construct_basic2.phpt b/ext/spl/tests/arrayObject___construct_basic2.phpt new file mode 100644 index 0000000..bd27c42 --- /dev/null +++ b/ext/spl/tests/arrayObject___construct_basic2.phpt @@ -0,0 +1,104 @@ +--TEST-- +SPL: ArrayObject::__construct basic usage. +--FILE-- + Access prop on instance of ArrayObject:\n"; +$c = new C; +$ao = new ArrayObject($c); +testAccess($c, $ao); + +echo "\n--> Access prop on instance of MyArrayObject:\n"; +$c = new C; +$ao = new MyArrayObject($c); +testAccess($c, $ao); + +function testAccess($c, $ao) { + echo " - Iteration:\n"; + foreach ($ao as $key=>$value) { + echo " $key=>$value\n"; + } + + echo " - Read:\n"; + @var_dump($ao->prop, $ao['prop']); + + echo " - Write:\n"; + $ao->prop = 'changed1'; + $ao['prop'] = 'changed2'; + var_dump($ao->prop, $ao['prop']); + + echo " - Isset:\n"; + var_dump(isset($ao->prop), isset($ao['prop'])); + + echo " - Unset:\n"; + unset($ao->prop); + unset($ao['prop']); + var_dump($ao->prop, $ao['prop']); + + echo " - After:\n"; + var_dump($ao, $c); +} +?> +--EXPECTF-- +--> Access prop on instance of ArrayObject: + - Iteration: + prop=>C::prop.orig + - Read: +NULL +string(12) "C::prop.orig" + - Write: +string(8) "changed1" +string(8) "changed2" + - Isset: +bool(true) +bool(true) + - Unset: + +Notice: Undefined property: ArrayObject::$prop in %s on line 40 + +Notice: Undefined index: prop in %s on line 40 +NULL +NULL + - After: +object(ArrayObject)#2 (1) { + ["storage":"ArrayObject":private]=> + object(C)#1 (0) { + } +} +object(C)#1 (0) { +} + +--> Access prop on instance of MyArrayObject: + - Iteration: + prop=>C::prop.orig + - Read: +string(24) "MyArrayObject::prop.orig" +string(12) "C::prop.orig" + - Write: +string(8) "changed1" +string(8) "changed2" + - Isset: +bool(true) +bool(true) + - Unset: + +Notice: Undefined property: MyArrayObject::$prop in %s on line 40 + +Notice: Undefined index: prop in %s on line 40 +NULL +NULL + - After: +object(MyArrayObject)#3 (1) { + ["storage":"ArrayObject":private]=> + object(C)#4 (0) { + } +} +object(C)#4 (0) { +} -- cgit v1.2.1