From a0733cc2fa6ab88e1c1287f34d30b0ea5a355f04 Mon Sep 17 00:00:00 2001 From: Marcus Boerger Date: Mon, 18 Dec 2006 23:01:29 +0000 Subject: [PATCH] - More tests - Test naming --- ext/spl/tests/observer_004.phpt | 2 +- ext/spl/tests/observer_005.phpt | 210 ++++++++++++++++++++++++++++++++ 2 files changed, 211 insertions(+), 1 deletion(-) create mode 100755 ext/spl/tests/observer_005.phpt diff --git a/ext/spl/tests/observer_004.phpt b/ext/spl/tests/observer_004.phpt index 5d1814fd39..2664904162 100755 --- a/ext/spl/tests/observer_004.phpt +++ b/ext/spl/tests/observer_004.phpt @@ -1,5 +1,5 @@ --TEST-- -SPL: SplObjectStorage overloaded & serialization +SPL: SplObjectStorage serialization & overloading --SKIPIF-- --FILE-- diff --git a/ext/spl/tests/observer_005.phpt b/ext/spl/tests/observer_005.phpt new file mode 100755 index 0000000000..a8fe114057 --- /dev/null +++ b/ext/spl/tests/observer_005.phpt @@ -0,0 +1,210 @@ +--TEST-- +SPL: SplObjectStorage serialization & visibility +--SKIPIF-- + +--FILE-- +pub = $pub; + $this->pro = $pro; + $this->pri = $pri; + } +} + +class ExtTestClass +{ +} + +class MyStorage extends SplObjectStorage +{ + public $def = 24; + public $pub = 25; + protected $pro = 26; + private $pri = 27; + + public function __construct($pub = 52, $pro = 53, $pri = 54) + { + $this->pub = $pub; + $this->pro = $pro; + $this->pri = $pri; + } +} + +class ExtStorage extends MyStorage +{ +} + +$storage = new MyStorage(1,2,3); + +foreach(array(array(4,5,6),array(7,8,9)) as $value) +{ + $storage->attach(new TestClass($value[0], $value[1], $value[2])); +} + +var_dump(count($storage)); + +foreach($storage as $object) +{ + var_dump($object); +} + +var_dump($storage); + +var_dump(serialize($storage)); +echo "===UNSERIALIZE===\n"; + +$storage2 = unserialize(serialize($storage)); + +var_dump(count($storage2)); + +foreach($storage2 as $object) +{ + var_dump($object); +} + +var_dump($storage2); + +?> +===DONE=== + +--EXPECTF-- +int(2) +object(TestClass)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(4) + ["pro":protected]=> + int(5) + ["pri":"TestClass":private]=> + int(6) +} +object(TestClass)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(7) + ["pro":protected]=> + int(8) + ["pri":"TestClass":private]=> + int(9) +} +object(MyStorage)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(1) + ["pro":protected]=> + int(2) + ["pri":"MyStorage":private]=> + int(3) +} +string(%d) "%s" +===UNSERIALIZE=== +int(2) +object(TestClass)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(4) + ["pro":protected]=> + int(5) + ["pri":"TestClass":private]=> + int(6) +} +object(TestClass)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(7) + ["pro":protected]=> + int(8) + ["pri":"TestClass":private]=> + int(9) +} +object(MyStorage)#%d (4) { + ["def"]=> + int(24) + ["pub"]=> + int(1) + ["pro":protected]=> + int(2) + ["pri":"MyStorage":private]=> + int(3) +} +===DONE=== +--UEXPECTF-- +int(2) +object(TestClass)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(4) + [u"pro":protected]=> + int(5) + [u"pri":u"TestClass":private]=> + int(6) +} +object(TestClass)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(7) + [u"pro":protected]=> + int(8) + [u"pri":u"TestClass":private]=> + int(9) +} +object(MyStorage)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(1) + [u"pro":protected]=> + int(2) + [u"pri":u"MyStorage":private]=> + int(3) +} +unicode(%d) "%s" +===UNSERIALIZE=== +int(2) +object(TestClass)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(4) + [u"pro":protected]=> + int(5) + [u"pri":u"TestClass":private]=> + int(6) +} +object(TestClass)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(7) + [u"pro":protected]=> + int(8) + [u"pri":u"TestClass":private]=> + int(9) +} +object(MyStorage)#%d (4) { + [u"def"]=> + int(24) + [u"pub"]=> + int(1) + [u"pro":protected]=> + int(2) + [u"pri":u"MyStorage":private]=> + int(3) +} +===DONE=== -- 2.50.1