Annotation of embedaddon/php/ext/wddx/tests/005.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: wddx session serializer handler (deserialize)
! 3: --SKIPIF--
! 4: <?php
! 5: if (!extension_loaded("wddx")) die("skip Wddx module not loaded");
! 6: if (!extension_loaded('session')) die('skip Session module not enabled');
! 7:
! 8: // following test code stolen from ext/session/skipif.inc
! 9: $save_path = ini_get("session.save_path");
! 10: if ($save_path) {
! 11: if (!file_exists($save_path)) {
! 12: die("skip Session save_path doesn't exist");
! 13: }
! 14:
! 15: if ($save_path && !@is_writable($save_path)) {
! 16: if (($p = strpos($save_path, ';')) !== false) {
! 17: $save_path = substr($save_path, ++$p);
! 18: }
! 19: if (!@is_writable($save_path)) {
! 20: die("skip\n");
! 21: }
! 22: }
! 23: }
! 24: ?>
! 25: --INI--
! 26: precision=14
! 27: session.serialize_handler=wddx
! 28: session.use_cookies=0
! 29: session.cache_limiter=
! 30: session.save_handler=files
! 31: --FILE--
! 32: <?php
! 33: class foo {
! 34: public $bar = "ok";
! 35:
! 36: function method() { $this->yes = "done"; }
! 37: }
! 38:
! 39: session_start();
! 40:
! 41: session_decode("<wddxPacket version='1.0'><header/><data><struct><var name='data'><struct><var name='test1'><boolean value='true'/></var><var name='test2'><string>some string</string></var><var name='test3'><number>654321</number></var><var name='test4'><array length='3'><string>some string</string><boolean value='true'/><null/></array></var></struct></var><var name='class'><struct><var name='php_class_name'><string>foo</string></var><var name='bar'><string>ok</string></var><var name='yes'><string>done</string></var></struct></var></struct></data></wddxPacket>");
! 42:
! 43: var_dump($_SESSION);
! 44:
! 45: session_destroy();
! 46: ?>
! 47: --EXPECT--
! 48: array(2) {
! 49: ["data"]=>
! 50: array(4) {
! 51: ["test1"]=>
! 52: bool(true)
! 53: ["test2"]=>
! 54: string(11) "some string"
! 55: ["test3"]=>
! 56: int(654321)
! 57: ["test4"]=>
! 58: array(3) {
! 59: [0]=>
! 60: string(11) "some string"
! 61: [1]=>
! 62: bool(true)
! 63: [2]=>
! 64: NULL
! 65: }
! 66: }
! 67: ["class"]=>
! 68: object(foo)#1 (2) {
! 69: ["bar"]=>
! 70: string(2) "ok"
! 71: ["yes"]=>
! 72: string(4) "done"
! 73: }
! 74: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>