diff --git a/php/CREDITS b/php/CREDITS deleted file mode 100644 index b3ae8a01..00000000 --- a/php/CREDITS +++ /dev/null @@ -1 +0,0 @@ -msgpack \ No newline at end of file diff --git a/php/ChangeLog b/php/ChangeLog deleted file mode 100644 index 1583f1e9..00000000 --- a/php/ChangeLog +++ /dev/null @@ -1,95 +0,0 @@ -msgpack extension changelog - -Version 0.5.2 -------------- - * Support PHP 5.4.x version. - -Version 0.5.1 -------------- - * Fixed include path for version check. - (Contributed by duedal) - -Version 0.5.0 -------------- - * Fix ZEND_DECLARE_MODULE_GLOBALS: - Moved ZEND_DECLARE_MODULE_GLOBALS from header to source file. - Added ZEND_EXTERN_MODULE_GLOBALS in source files to avoid undefined - _msgpack_globals message. - (Contributed by seporaitis) - * Add unpack of template converter: - Merge https://github.com/msgpack/msgpack/pull/58 - Fixed memory leaks. - Fixed older version. - Fixed tests scripts. - Added msgpack_unpack function was implemented. - (Contributed by ivan) - -Version 0.4.0 -------------- - * Fix array pack. - * Fix test code. - * Add unpack of class object converter. - -Version 0.3.4 -------------- - * Support PHP 5.3.x version on Windows. - (note: NAN and Resource is failed) - -Version 0.3.3 -------------- - * Update msgpack header files. - * Fix unpack internal processing. - -Version 0.3.2 -------------- - * Version PHP 5 or newer. - -Version 0.3.1 -------------- - * Fix class MessagePackUnpacker. - -Version 0.3.0 -------------- - * Change msgpack_unpack.c (used template) - * Add php_only ini option (true / false) - * Change class MessagePack and MessagePackUnpacker __construct option. - * Add class MessagePack and MessagePackUnpacker setOption method. - -Version 0.2.1 -------------- - * Fix stream deserializer. - -Version 0.2.0 -------------- - * Add stream deserializer / class MessagePackUnpacker interface. - * Add alias functions. - * Add class MessagePack interface. - -Version 0.1.5 -------------- - * Add msgpack_pack.c - * Add msgpack_unpack.c - * Update msgpack.c - -Version 0.1.4 -------------- - * Change broken random data. - * Support PHP 5.2.x version. - -Version 0.1.3 -------------- - * Fix broken random data. - * Change arrays and objects. - -Version 0.1.2 -------------- - * Add Serializable class support. - * Fix arrays and objects reference. - -Version 0.1.1 -------------- - * Add session support. - -Version 0.1.0 -------------- - * Initial release. diff --git a/php/EXPERIMENTAL b/php/EXPERIMENTAL deleted file mode 100644 index e69de29b..00000000 diff --git a/php/LICENSE b/php/LICENSE deleted file mode 100644 index c0688fcf..00000000 --- a/php/LICENSE +++ /dev/null @@ -1,26 +0,0 @@ -Copyright (c) 2010, advect -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of the advect nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, -OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF -THE POSSIBILITY OF SUCH DAMAGE. diff --git a/php/README b/php/README deleted file mode 100644 index 6e22a92d..00000000 --- a/php/README +++ /dev/null @@ -1,11 +0,0 @@ -Description ------------ -This extension provide API for communicating with MessagePack serialization. - -MessagePack is a binary-based efficient object serialization library. -It enables to exchange structured objects between many languages like JSON. -But unlike JSON, it is very fast and small. - -Resources ---------- - * [msgpack](http://msgpack.org/) diff --git a/php/bench/bench.php b/php/bench/bench.php deleted file mode 100644 index 95a7ca43..00000000 --- a/php/bench/bench.php +++ /dev/null @@ -1,51 +0,0 @@ - diff --git a/php/benchmark.php b/php/benchmark.php deleted file mode 100644 index cd531a9e..00000000 --- a/php/benchmark.php +++ /dev/null @@ -1,239 +0,0 @@ - md5(rand()), - md5(rand()) => md5(rand()), - md5(rand()) => md5(rand()), - md5(rand()) => md5(rand()), - md5(rand()) => md5(rand())); - break; - case 6: - //object - $value = new stdClass; - $value->param1 = rand(); - $value->param2 = md5(uniqid()); - $value->param3 = array(md5(uniqid())); - $value->param4 = array(md5(uniqid()) => md5(uniqid())); - $value->param5 = null; - break; - default: - //null - $value = null; - } - - if (!is_numeric($retry) || empty($retry)) - { - $retry = 1; - } - - $serialize_pack = 0; - $serialize_unpack = 0; - $serialize_size = 0; - $serialize_status = '*NG*'; - $json_pack = 0; - $json_unpack = 0; - $json_size = 0; - $json_status = '*NG*'; - $igbinary_pack = 0; - $igbinary_unpack = 0; - $igbinary_size = 0; - $igbinary_status = '*NG*'; - $msgpack_pack = 0; - $msgpack_unpack = 0; - $msgpack_size = 0; - $msgpack_status = '*NG*'; - - for ($c = 0; $c < $retry; $c++) - { - //default (serialize) - $pack = null; - $unpack = null; - - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $pack = serialize($value); - } - $end = microtime(true); - $serialize_pack += ($end - $start); - - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $unpack = unserialize($pack); - } - $end = microtime(true); - $serialize_unpack += ($end - $start); - - $serialize_size += strlen($pack); - if ($unpack === $value || - (is_object($value) && $unpack == $value)) - { - $serialize_status = 'OK'; - } - - //json - $pack = null; - $unpack = null; - $opt = false; - if (is_array($value)) - { - $opt = true; - } - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $pack = json_encode($value); - } - $end = microtime(true); - $json_pack += ($end - $start); - - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $unpack = json_decode($pack, $opt); - } - $end = microtime(true); - $json_unpack += ($end - $start); - - $json_size += strlen($pack); - if ($unpack === $value || - (is_object($value) && $unpack == $value) || - (is_float($value) && - number_format($value, 10, '.', '') === - number_format($unpack, 10, '.', ''))) - { - $json_status = 'OK'; - } - - //igbinary - if (extension_loaded('igbinary')) - { - $pack = null; - $unpack = null; - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $pack = igbinary_serialize($value); - } - $end = microtime(true); - $igbinary_pack += ($end - $start); - - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $unpack = igbinary_unserialize($pack); - } - $end = microtime(true); - $igbinary_unpack += ($end - $start); - - $igbinary_size += strlen($pack); - if ($unpack === $value || - (is_object($value) && $unpack == $value)) - { - $igbinary_status = 'OK'; - } - } - - //msgpack - $pack = null; - $unpack = null; - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $pack = msgpack_serialize($value); - } - $end = microtime(true); - $msgpack_pack += ($end - $start); - - $start = microtime(true); - for ($i = 0; $i < $loop; $i++) - { - $unpack = msgpack_unserialize($pack); - } - $end = microtime(true); - $msgpack_unpack += ($end - $start); - - $msgpack_size += strlen($pack); - if ($unpack === $value || - (is_object($value) && $unpack == $value)) - { - $msgpack_status = 'OK'; - } - } - - $serialize_pack /= $retry; - $serialize_unpack /= $retry; - $serialize_size /= $retry; - $json_pack /= $retry; - $json_unpack /= $retry; - $json_size /= $retry; - $igbinary_pack /= $retry; - $igbinary_unpack /= $retry; - $igbinary_size /= $retry; - $msgpack_pack /= $retry; - $msgpack_unpack /= $retry; - $msgpack_size /= $retry; - - printf("[%-10s] %13s %13s %13s %13s\n", - gettype($value), 'default', 'json', 'igbinary', 'msgpack'); - printf("status : %12s %12s %12s %12s\n", - $serialize_status, $json_status, $igbinary_status, $msgpack_status); - printf("serialize : %.4f (100%%) %.4f (%3d%%) %.4f (%3d%%) %.4f (%3d%%)\n", - $serialize_pack, - $json_pack, ($json_pack / $serialize_pack * 100), - $igbinary_pack, ($igbinary_pack / $serialize_pack * 100), - $msgpack_pack, ($msgpack_pack / $serialize_pack * 100)); - printf("unserialize: %.4f (100%%) %.4f (%3d%%) %.4f (%3d%%) %.4f (%3d%%)\n", - $serialize_unpack, - $json_unpack, ($json_unpack / $serialize_unpack * 100), - $igbinary_unpack, ($igbinary_unpack / $serialize_unpack * 100), - $msgpack_unpack, ($msgpack_unpack / $serialize_unpack * 100)); - printf("size : %6d (100%%) %6d (%3d%%) %6d (%3d%%) %6d (%3d%%)\n\n", - $serialize_size, - $json_size, ($json_size / $serialize_size * 100), - $igbinary_size, ($igbinary_size / $serialize_size * 100), - $msgpack_size, ($msgpack_size / $serialize_size * 100)); - if ($value_display === true) - { - var_dump($value); - echo PHP_EOL; - } -} diff --git a/php/config.m4 b/php/config.m4 deleted file mode 100644 index a20de3e4..00000000 --- a/php/config.m4 +++ /dev/null @@ -1,33 +0,0 @@ -dnl config.m4 for extension msgpack - -dnl Comments in this file start with the string 'dnl'. -dnl Remove where necessary. This file will not work -dnl without editing. - -dnl Check PHP version: - -AC_MSG_CHECKING(PHP version) -AC_TRY_COMPILE([#include "$phpincludedir/main/php_version.h"], [ -#if PHP_MAJOR_VERSION < 5 -#error this extension requires at least PHP version 5 or newer -#endif -], -[AC_MSG_RESULT(ok)], -[AC_MSG_ERROR([need at least PHP 5 or newer])]) - -dnl If your extension references something external, use with: - -PHP_ARG_WITH(msgpack, for msgpack support, -Make sure that the comment is aligned: -[ --with-msgpack Include msgpack support]) - -if test "$PHP_MSGPACK" != "no"; then - PHP_NEW_EXTENSION(msgpack, msgpack.c msgpack_pack.c msgpack_unpack.c msgpack_class.c msgpack_convert.c, $ext_shared) - - ifdef([PHP_INSTALL_HEADERS], - [ - PHP_INSTALL_HEADERS([ext/msgpack], [php_msgpack.h]) - ], [ - PHP_ADD_MAKEFILE_FRAGMENT - ]) -fi diff --git a/php/config.w32 b/php/config.w32 deleted file mode 100644 index a0267ce5..00000000 --- a/php/config.w32 +++ /dev/null @@ -1,9 +0,0 @@ -// $Id$ -// vim:ft=javascript - -ARG_ENABLE("msgpack", "for msgpack support", "yes"); - -if (PHP_MSGPACK != "no") { - EXTENSION("msgpack", "msgpack.c", PHP_MSGPACK_SHARED, ""); - ADD_SOURCES(configure_module_dirname, "msgpack_pack.c msgpack_unpack.c msgpack_class.c msgpack_convert.c", "msgpack"); -} diff --git a/php/msgpack.c b/php/msgpack.c deleted file mode 100644 index 3ba11332..00000000 --- a/php/msgpack.c +++ /dev/null @@ -1,345 +0,0 @@ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "php.h" -#include "php_ini.h" -#include "ext/standard/info.h" -#include "ext/standard/php_smart_str.h" -#include "ext/standard/php_incomplete_class.h" -#include "ext/standard/php_var.h" -#include "ext/session/php_session.h" - -#include "php_msgpack.h" -#include "msgpack_pack.h" -#include "msgpack_unpack.h" -#include "msgpack_class.h" -#include "msgpack_convert.h" -#include "msgpack_errors.h" -#include "msgpack/version.h" - -ZEND_DECLARE_MODULE_GLOBALS(msgpack) - -static ZEND_FUNCTION(msgpack_serialize); -static ZEND_FUNCTION(msgpack_unserialize); - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_serialize, 0, 0, 1) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unserialize, 0, 0, 1) - ZEND_ARG_INFO(0, str) - ZEND_ARG_INFO(0, object) -ZEND_END_ARG_INFO() - -PHP_INI_BEGIN() -STD_PHP_INI_BOOLEAN( - "msgpack.error_display", "1", PHP_INI_ALL, OnUpdateBool, - error_display, zend_msgpack_globals, msgpack_globals) -STD_PHP_INI_BOOLEAN( - "msgpack.php_only", "1", PHP_INI_ALL, OnUpdateBool, - php_only, zend_msgpack_globals, msgpack_globals) -STD_PHP_INI_BOOLEAN( - "msgpack.illegal_key_insert", "0", PHP_INI_ALL, OnUpdateBool, - illegal_key_insert, zend_msgpack_globals, msgpack_globals) -PHP_INI_END() - -PS_SERIALIZER_FUNCS(msgpack); - -static const zend_function_entry msgpack_functions[] = { - ZEND_FE(msgpack_serialize, arginfo_msgpack_serialize) - ZEND_FE(msgpack_unserialize, arginfo_msgpack_unserialize) - ZEND_FALIAS(msgpack_pack, msgpack_serialize, arginfo_msgpack_serialize) - ZEND_FALIAS(msgpack_unpack, msgpack_unserialize, arginfo_msgpack_unserialize) - {NULL, NULL, NULL} -}; - -static void msgpack_init_globals(zend_msgpack_globals *msgpack_globals) -{ - TSRMLS_FETCH(); - - if (PG(display_errors)) - { - msgpack_globals->error_display = 1; - } - else - { - msgpack_globals->error_display = 0; - } - - msgpack_globals->php_only = 1; - - msgpack_globals->illegal_key_insert = 0; -} - -static ZEND_MINIT_FUNCTION(msgpack) -{ - ZEND_INIT_MODULE_GLOBALS(msgpack, msgpack_init_globals, NULL); - - REGISTER_INI_ENTRIES(); - -#if HAVE_PHP_SESSION - php_session_register_serializer("msgpack", - PS_SERIALIZER_ENCODE_NAME(msgpack), - PS_SERIALIZER_DECODE_NAME(msgpack)); -#endif - - msgpack_init_class(); - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION < 1) - REGISTER_LONG_CONSTANT( - "MESSAGEPACK_OPT_PHPONLY", MSGPACK_CLASS_OPT_PHPONLY, - CONST_CS | CONST_PERSISTENT); -#endif - - return SUCCESS; -} - -static ZEND_MSHUTDOWN_FUNCTION(msgpack) -{ - UNREGISTER_INI_ENTRIES(); - - return SUCCESS; -} - -static ZEND_MINFO_FUNCTION(msgpack) -{ - php_info_print_table_start(); - php_info_print_table_row(2, "MessagePack Support", "enabled"); -#if HAVE_PHP_SESSION - php_info_print_table_row(2, "Session Support", "enabled" ); -#endif - php_info_print_table_row(2, "extension Version", MSGPACK_EXTENSION_VERSION); - php_info_print_table_row(2, "header Version", MSGPACK_VERSION); - php_info_print_table_end(); - - DISPLAY_INI_ENTRIES(); -} - -zend_module_entry msgpack_module_entry = { -#if ZEND_MODULE_API_NO >= 20010901 - STANDARD_MODULE_HEADER, -#endif - "msgpack", - msgpack_functions, - ZEND_MINIT(msgpack), - ZEND_MSHUTDOWN(msgpack), - NULL, - NULL, - ZEND_MINFO(msgpack), -#if ZEND_MODULE_API_NO >= 20010901 - MSGPACK_EXTENSION_VERSION, -#endif - STANDARD_MODULE_PROPERTIES -}; - -#ifdef COMPILE_DL_MSGPACK -ZEND_GET_MODULE(msgpack) -#endif - -PS_SERIALIZER_ENCODE_FUNC(msgpack) -{ - smart_str buf = {0}; - msgpack_serialize_data_t var_hash; - - PHP_VAR_SERIALIZE_INIT(var_hash); - -#if PHP_API_VERSION < 20100412 - msgpack_serialize_zval(&buf, PS(http_session_vars), &var_hash TSRMLS_CC); -#else - msgpack_serialize_zval(&buf, PS(http_session_vars), var_hash TSRMLS_CC); -#endif - - if (newlen) - { - *newlen = buf.len; - } - - smart_str_0(&buf); - *newstr = buf.c; - - PHP_VAR_SERIALIZE_DESTROY(var_hash); - - return SUCCESS; -} - -PS_SERIALIZER_DECODE_FUNC(msgpack) -{ - int ret; - HashTable *tmp_hash; - HashPosition tmp_hash_pos; - char *key_str; - ulong key_long; - uint key_len; - zval *tmp; - zval **value; - size_t off = 0; - msgpack_unpack_t mp; - msgpack_unserialize_data_t var_hash; - - ALLOC_INIT_ZVAL(tmp); - - template_init(&mp); - - msgpack_unserialize_var_init(&var_hash); - - mp.user.retval = (zval *)tmp; - mp.user.var_hash = (msgpack_unserialize_data_t *)&var_hash; - - ret = template_execute(&mp, (char *)val, (size_t)vallen, &off); - - if (ret == MSGPACK_UNPACK_EXTRA_BYTES || ret == MSGPACK_UNPACK_SUCCESS) - { - msgpack_unserialize_var_destroy(&var_hash, 0); - - tmp_hash = HASH_OF(tmp); - - zend_hash_internal_pointer_reset_ex(tmp_hash, &tmp_hash_pos); - - while (zend_hash_get_current_data_ex( - tmp_hash, (void *)&value, &tmp_hash_pos) == SUCCESS) - { - ret = zend_hash_get_current_key_ex( - tmp_hash, &key_str, &key_len, &key_long, 0, &tmp_hash_pos); - switch (ret) - { - case HASH_KEY_IS_LONG: - /* ??? */ - break; - case HASH_KEY_IS_STRING: - php_set_session_var( - key_str, key_len - 1, *value, NULL TSRMLS_CC); - php_add_session_var(key_str, key_len - 1 TSRMLS_CC); - break; - } - zend_hash_move_forward_ex(tmp_hash, &tmp_hash_pos); - } - } - else - { - msgpack_unserialize_var_destroy(&var_hash, 1); - } - - zval_ptr_dtor(&tmp); - - return SUCCESS; -} - -PHP_MSGPACK_API void php_msgpack_serialize(smart_str *buf, zval *val TSRMLS_DC) -{ - msgpack_serialize_data_t var_hash; - - PHP_VAR_SERIALIZE_INIT(var_hash); - -#if PHP_API_VERSION < 20100412 - msgpack_serialize_zval(buf, val, &var_hash TSRMLS_CC); -#else - msgpack_serialize_zval(buf, val, var_hash TSRMLS_CC); -#endif - - PHP_VAR_SERIALIZE_DESTROY(var_hash); -} - -PHP_MSGPACK_API void php_msgpack_unserialize( - zval *return_value, char *str, size_t str_len TSRMLS_DC) -{ - int ret; - size_t off = 0; - msgpack_unpack_t mp; - msgpack_unserialize_data_t var_hash; - - if (str_len <= 0) - { - RETURN_NULL(); - } - - template_init(&mp); - - msgpack_unserialize_var_init(&var_hash); - - mp.user.retval = (zval *)return_value; - mp.user.var_hash = (msgpack_unserialize_data_t *)&var_hash; - - ret = template_execute(&mp, str, (size_t)str_len, &off); - - switch (ret) - { - case MSGPACK_UNPACK_PARSE_ERROR: - msgpack_unserialize_var_destroy(&var_hash, 1); - MSGPACK_WARNING("[msgpack] (%s) Parse error", __FUNCTION__); - break; - case MSGPACK_UNPACK_CONTINUE: - msgpack_unserialize_var_destroy(&var_hash, 1); - MSGPACK_WARNING( - "[msgpack] (%s) Insufficient data for unserializing", - __FUNCTION__); - break; - case MSGPACK_UNPACK_EXTRA_BYTES: - case MSGPACK_UNPACK_SUCCESS: - msgpack_unserialize_var_destroy(&var_hash, 0); - if (off < (size_t)str_len) - { - MSGPACK_WARNING("[msgpack] (%s) Extra bytes", __FUNCTION__); - } - break; - default: - msgpack_unserialize_var_destroy(&var_hash, 0); - MSGPACK_WARNING("[msgpack] (%s) Unknown result", __FUNCTION__); - break; - } -} - -static ZEND_FUNCTION(msgpack_serialize) -{ - zval *parameter; - smart_str buf = {0}; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "z", ¶meter) == FAILURE) - { - return; - } - - php_msgpack_serialize(&buf, parameter TSRMLS_CC); - - ZVAL_STRINGL(return_value, buf.c, buf.len, 1); - - smart_str_free(&buf); -} - -static ZEND_FUNCTION(msgpack_unserialize) -{ - char *str; - int str_len; - zval *object = NULL; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "s|z", - &str, &str_len, &object) == FAILURE) - { - return; - } - - if (!str_len) - { - RETURN_NULL(); - } - - if (object == NULL) - { - php_msgpack_unserialize(return_value, str, str_len TSRMLS_CC); - } - else - { - zval *zv; - - ALLOC_INIT_ZVAL(zv); - php_msgpack_unserialize(zv, str, str_len TSRMLS_CC); - - if (msgpack_convert_template(return_value, object, &zv) != SUCCESS) - { - RETURN_NULL(); - } - } -} diff --git a/php/msgpack.php b/php/msgpack.php deleted file mode 100644 index 51547818..00000000 --- a/php/msgpack.php +++ /dev/null @@ -1,21 +0,0 @@ -"; - -if(!extension_loaded('msgpack')) { - dl('msgpack.' . PHP_SHLIB_SUFFIX); -} -$module = 'msgpack'; -$functions = get_extension_funcs($module); -echo "Functions available in the test extension:$br\n"; -foreach($functions as $func) { - echo $func."$br\n"; -} -echo "$br\n"; -$function = $module . '_serialize'; -if (extension_loaded($module)) { - $str = $function($module); -} else { - $str = "Module $module is not compiled into PHP"; -} -echo "$str\n"; -?> diff --git a/php/msgpack/pack_define.h b/php/msgpack/pack_define.h deleted file mode 100644 index 4845d52e..00000000 --- a/php/msgpack/pack_define.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - * MessagePack unpacking routine template - * - * Copyright (C) 2008-2010 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -#ifndef MSGPACK_PACK_DEFINE_H__ -#define MSGPACK_PACK_DEFINE_H__ - -#include "msgpack/sysdep.h" -#include -#include - -#endif /* msgpack/pack_define.h */ - diff --git a/php/msgpack/pack_template.h b/php/msgpack/pack_template.h deleted file mode 100644 index 887a61bf..00000000 --- a/php/msgpack/pack_template.h +++ /dev/null @@ -1,766 +0,0 @@ -/* - * MessagePack packing routine template - * - * Copyright (C) 2008-2010 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined(__LITTLE_ENDIAN__) -#define TAKE8_8(d) ((uint8_t*)&d)[0] -#define TAKE8_16(d) ((uint8_t*)&d)[0] -#define TAKE8_32(d) ((uint8_t*)&d)[0] -#define TAKE8_64(d) ((uint8_t*)&d)[0] -#elif defined(__BIG_ENDIAN__) -#define TAKE8_8(d) ((uint8_t*)&d)[0] -#define TAKE8_16(d) ((uint8_t*)&d)[1] -#define TAKE8_32(d) ((uint8_t*)&d)[3] -#define TAKE8_64(d) ((uint8_t*)&d)[7] -#endif - -#ifndef msgpack_pack_inline_func -#error msgpack_pack_inline_func template is not defined -#endif - -#ifndef msgpack_pack_user -#error msgpack_pack_user type is not defined -#endif - -#ifndef msgpack_pack_append_buffer -#error msgpack_pack_append_buffer callback is not defined -#endif - - -/* - * Integer - */ - -#define msgpack_pack_real_uint8(x, d) \ -do { \ - if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); \ - } else { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_8(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ -} while(0) - -#define msgpack_pack_real_uint16(x, d) \ -do { \ - if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_16(d), 1); \ - } else if(d < (1<<8)) { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_16(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } else { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } \ -} while(0) - -#define msgpack_pack_real_uint32(x, d) \ -do { \ - if(d < (1<<8)) { \ - if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_32(d), 1); \ - } else { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_32(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ - } else { \ - if(d < (1<<16)) { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else { \ - /* unsigned 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } \ - } \ -} while(0) - -#define msgpack_pack_real_uint64(x, d) \ -do { \ - if(d < (1ULL<<8)) { \ - if(d < (1ULL<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_64(d), 1); \ - } else { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_64(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ - } else { \ - if(d < (1ULL<<16)) { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else if(d < (1ULL<<32)) { \ - /* unsigned 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } else { \ - /* unsigned 64 */ \ - unsigned char buf[9]; \ - buf[0] = 0xcf; _msgpack_store64(&buf[1], d); \ - msgpack_pack_append_buffer(x, buf, 9); \ - } \ - } \ -} while(0) - -#define msgpack_pack_real_int8(x, d) \ -do { \ - if(d < -(1<<5)) { \ - /* signed 8 */ \ - unsigned char buf[2] = {0xd0, TAKE8_8(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } else { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); \ - } \ -} while(0) - -#define msgpack_pack_real_int16(x, d) \ -do { \ - if(d < -(1<<5)) { \ - if(d < -(1<<7)) { \ - /* signed 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else { \ - /* signed 8 */ \ - unsigned char buf[2] = {0xd0, TAKE8_16(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ - } else if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_16(d), 1); \ - } else { \ - if(d < (1<<8)) { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_16(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } else { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } \ - } \ -} while(0) - -#define msgpack_pack_real_int32(x, d) \ -do { \ - if(d < -(1<<5)) { \ - if(d < -(1<<15)) { \ - /* signed 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xd2; _msgpack_store32(&buf[1], (int32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } else if(d < -(1<<7)) { \ - /* signed 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else { \ - /* signed 8 */ \ - unsigned char buf[2] = {0xd0, TAKE8_32(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ - } else if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_32(d), 1); \ - } else { \ - if(d < (1<<8)) { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_32(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } else if(d < (1<<16)) { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else { \ - /* unsigned 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } \ - } \ -} while(0) - -#define msgpack_pack_real_int64(x, d) \ -do { \ - if(d < -(1LL<<5)) { \ - if(d < -(1LL<<15)) { \ - if(d < -(1LL<<31)) { \ - /* signed 64 */ \ - unsigned char buf[9]; \ - buf[0] = 0xd3; _msgpack_store64(&buf[1], d); \ - msgpack_pack_append_buffer(x, buf, 9); \ - } else { \ - /* signed 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xd2; _msgpack_store32(&buf[1], (int32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } \ - } else { \ - if(d < -(1<<7)) { \ - /* signed 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } else { \ - /* signed 8 */ \ - unsigned char buf[2] = {0xd0, TAKE8_64(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } \ - } \ - } else if(d < (1<<7)) { \ - /* fixnum */ \ - msgpack_pack_append_buffer(x, &TAKE8_64(d), 1); \ - } else { \ - if(d < (1LL<<16)) { \ - if(d < (1<<8)) { \ - /* unsigned 8 */ \ - unsigned char buf[2] = {0xcc, TAKE8_64(d)}; \ - msgpack_pack_append_buffer(x, buf, 2); \ - } else { \ - /* unsigned 16 */ \ - unsigned char buf[3]; \ - buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \ - msgpack_pack_append_buffer(x, buf, 3); \ - } \ - } else { \ - if(d < (1LL<<32)) { \ - /* unsigned 32 */ \ - unsigned char buf[5]; \ - buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \ - msgpack_pack_append_buffer(x, buf, 5); \ - } else { \ - /* unsigned 64 */ \ - unsigned char buf[9]; \ - buf[0] = 0xcf; _msgpack_store64(&buf[1], d); \ - msgpack_pack_append_buffer(x, buf, 9); \ - } \ - } \ - } \ -} while(0) - - -#ifdef msgpack_pack_inline_func_fixint - -msgpack_pack_inline_func_fixint(_uint8)(msgpack_pack_user x, uint8_t d) -{ - unsigned char buf[2] = {0xcc, TAKE8_8(d)}; - msgpack_pack_append_buffer(x, buf, 2); -} - -msgpack_pack_inline_func_fixint(_uint16)(msgpack_pack_user x, uint16_t d) -{ - unsigned char buf[3]; - buf[0] = 0xcd; _msgpack_store16(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 3); -} - -msgpack_pack_inline_func_fixint(_uint32)(msgpack_pack_user x, uint32_t d) -{ - unsigned char buf[5]; - buf[0] = 0xce; _msgpack_store32(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 5); -} - -msgpack_pack_inline_func_fixint(_uint64)(msgpack_pack_user x, uint64_t d) -{ - unsigned char buf[9]; - buf[0] = 0xcf; _msgpack_store64(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 9); -} - -msgpack_pack_inline_func_fixint(_int8)(msgpack_pack_user x, int8_t d) -{ - unsigned char buf[2] = {0xd0, TAKE8_8(d)}; - msgpack_pack_append_buffer(x, buf, 2); -} - -msgpack_pack_inline_func_fixint(_int16)(msgpack_pack_user x, int16_t d) -{ - unsigned char buf[3]; - buf[0] = 0xd1; _msgpack_store16(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 3); -} - -msgpack_pack_inline_func_fixint(_int32)(msgpack_pack_user x, int32_t d) -{ - unsigned char buf[5]; - buf[0] = 0xd2; _msgpack_store32(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 5); -} - -msgpack_pack_inline_func_fixint(_int64)(msgpack_pack_user x, int64_t d) -{ - unsigned char buf[9]; - buf[0] = 0xd3; _msgpack_store64(&buf[1], d); - msgpack_pack_append_buffer(x, buf, 9); -} - -#undef msgpack_pack_inline_func_fixint -#endif - - -msgpack_pack_inline_func(_uint8)(msgpack_pack_user x, uint8_t d) -{ - msgpack_pack_real_uint8(x, d); -} - -msgpack_pack_inline_func(_uint16)(msgpack_pack_user x, uint16_t d) -{ - msgpack_pack_real_uint16(x, d); -} - -msgpack_pack_inline_func(_uint32)(msgpack_pack_user x, uint32_t d) -{ - msgpack_pack_real_uint32(x, d); -} - -msgpack_pack_inline_func(_uint64)(msgpack_pack_user x, uint64_t d) -{ - msgpack_pack_real_uint64(x, d); -} - -msgpack_pack_inline_func(_int8)(msgpack_pack_user x, int8_t d) -{ - msgpack_pack_real_int8(x, d); -} - -msgpack_pack_inline_func(_int16)(msgpack_pack_user x, int16_t d) -{ - msgpack_pack_real_int16(x, d); -} - -msgpack_pack_inline_func(_int32)(msgpack_pack_user x, int32_t d) -{ - msgpack_pack_real_int32(x, d); -} - -msgpack_pack_inline_func(_int64)(msgpack_pack_user x, int64_t d) -{ - msgpack_pack_real_int64(x, d); -} - - -#ifdef msgpack_pack_inline_func_cint - -msgpack_pack_inline_func_cint(_short)(msgpack_pack_user x, short d) -{ -#if defined(SIZEOF_SHORT) -#if SIZEOF_SHORT == 2 - msgpack_pack_real_int16(x, d); -#elif SIZEOF_SHORT == 4 - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#elif defined(SHRT_MAX) -#if SHRT_MAX == 0x7fff - msgpack_pack_real_int16(x, d); -#elif SHRT_MAX == 0x7fffffff - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#else -if(sizeof(short) == 2) { - msgpack_pack_real_int16(x, d); -} else if(sizeof(short) == 4) { - msgpack_pack_real_int32(x, d); -} else { - msgpack_pack_real_int64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_int)(msgpack_pack_user x, int d) -{ -#if defined(SIZEOF_INT) -#if SIZEOF_INT == 2 - msgpack_pack_real_int16(x, d); -#elif SIZEOF_INT == 4 - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#elif defined(INT_MAX) -#if INT_MAX == 0x7fff - msgpack_pack_real_int16(x, d); -#elif INT_MAX == 0x7fffffff - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#else -if(sizeof(int) == 2) { - msgpack_pack_real_int16(x, d); -} else if(sizeof(int) == 4) { - msgpack_pack_real_int32(x, d); -} else { - msgpack_pack_real_int64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_long)(msgpack_pack_user x, long d) -{ -#if defined(SIZEOF_LONG) -#if SIZEOF_LONG == 2 - msgpack_pack_real_int16(x, d); -#elif SIZEOF_LONG == 4 - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#elif defined(LONG_MAX) -#if LONG_MAX == 0x7fffL - msgpack_pack_real_int16(x, d); -#elif LONG_MAX == 0x7fffffffL - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#else -if(sizeof(long) == 2) { - msgpack_pack_real_int16(x, d); -} else if(sizeof(long) == 4) { - msgpack_pack_real_int32(x, d); -} else { - msgpack_pack_real_int64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_long_long)(msgpack_pack_user x, long long d) -{ -#if defined(SIZEOF_LONG_LONG) -#if SIZEOF_LONG_LONG == 2 - msgpack_pack_real_int16(x, d); -#elif SIZEOF_LONG_LONG == 4 - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#elif defined(LLONG_MAX) -#if LLONG_MAX == 0x7fffL - msgpack_pack_real_int16(x, d); -#elif LLONG_MAX == 0x7fffffffL - msgpack_pack_real_int32(x, d); -#else - msgpack_pack_real_int64(x, d); -#endif - -#else -if(sizeof(long long) == 2) { - msgpack_pack_real_int16(x, d); -} else if(sizeof(long long) == 4) { - msgpack_pack_real_int32(x, d); -} else { - msgpack_pack_real_int64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_unsigned_short)(msgpack_pack_user x, unsigned short d) -{ -#if defined(SIZEOF_SHORT) -#if SIZEOF_SHORT == 2 - msgpack_pack_real_uint16(x, d); -#elif SIZEOF_SHORT == 4 - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#elif defined(USHRT_MAX) -#if USHRT_MAX == 0xffffU - msgpack_pack_real_uint16(x, d); -#elif USHRT_MAX == 0xffffffffU - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#else -if(sizeof(unsigned short) == 2) { - msgpack_pack_real_uint16(x, d); -} else if(sizeof(unsigned short) == 4) { - msgpack_pack_real_uint32(x, d); -} else { - msgpack_pack_real_uint64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_unsigned_int)(msgpack_pack_user x, unsigned int d) -{ -#if defined(SIZEOF_INT) -#if SIZEOF_INT == 2 - msgpack_pack_real_uint16(x, d); -#elif SIZEOF_INT == 4 - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#elif defined(UINT_MAX) -#if UINT_MAX == 0xffffU - msgpack_pack_real_uint16(x, d); -#elif UINT_MAX == 0xffffffffU - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#else -if(sizeof(unsigned int) == 2) { - msgpack_pack_real_uint16(x, d); -} else if(sizeof(unsigned int) == 4) { - msgpack_pack_real_uint32(x, d); -} else { - msgpack_pack_real_uint64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_unsigned_long)(msgpack_pack_user x, unsigned long d) -{ -#if defined(SIZEOF_LONG) -#if SIZEOF_LONG == 2 - msgpack_pack_real_uint16(x, d); -#elif SIZEOF_LONG == 4 - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#elif defined(ULONG_MAX) -#if ULONG_MAX == 0xffffUL - msgpack_pack_real_uint16(x, d); -#elif ULONG_MAX == 0xffffffffUL - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#else -if(sizeof(unsigned long) == 2) { - msgpack_pack_real_uint16(x, d); -} else if(sizeof(unsigned long) == 4) { - msgpack_pack_real_uint32(x, d); -} else { - msgpack_pack_real_uint64(x, d); -} -#endif -} - -msgpack_pack_inline_func_cint(_unsigned_long_long)(msgpack_pack_user x, unsigned long long d) -{ -#if defined(SIZEOF_LONG_LONG) -#if SIZEOF_LONG_LONG == 2 - msgpack_pack_real_uint16(x, d); -#elif SIZEOF_LONG_LONG == 4 - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#elif defined(ULLONG_MAX) -#if ULLONG_MAX == 0xffffUL - msgpack_pack_real_uint16(x, d); -#elif ULLONG_MAX == 0xffffffffUL - msgpack_pack_real_uint32(x, d); -#else - msgpack_pack_real_uint64(x, d); -#endif - -#else -if(sizeof(unsigned long long) == 2) { - msgpack_pack_real_uint16(x, d); -} else if(sizeof(unsigned long long) == 4) { - msgpack_pack_real_uint32(x, d); -} else { - msgpack_pack_real_uint64(x, d); -} -#endif -} - -#undef msgpack_pack_inline_func_cint -#endif - - - -/* - * Float - */ - -msgpack_pack_inline_func(_float)(msgpack_pack_user x, float d) -{ - union { float f; uint32_t i; } mem; - unsigned char buf[5]; - mem.f = d; - buf[0] = 0xca; _msgpack_store32(&buf[1], mem.i); - msgpack_pack_append_buffer(x, buf, 5); -} - -msgpack_pack_inline_func(_double)(msgpack_pack_user x, double d) -{ - union { double f; uint64_t i; } mem; - unsigned char buf[9]; - mem.f = d; - buf[0] = 0xcb; _msgpack_store64(&buf[1], mem.i); - msgpack_pack_append_buffer(x, buf, 9); -} - - -/* - * Nil - */ - -msgpack_pack_inline_func(_nil)(msgpack_pack_user x) -{ - static const unsigned char d = 0xc0; - msgpack_pack_append_buffer(x, &d, 1); -} - - -/* - * Boolean - */ - -msgpack_pack_inline_func(_true)(msgpack_pack_user x) -{ - static const unsigned char d = 0xc3; - msgpack_pack_append_buffer(x, &d, 1); -} - -msgpack_pack_inline_func(_false)(msgpack_pack_user x) -{ - static const unsigned char d = 0xc2; - msgpack_pack_append_buffer(x, &d, 1); -} - - -/* - * Array - */ - -msgpack_pack_inline_func(_array)(msgpack_pack_user x, unsigned int n) -{ - if(n < 16) { - unsigned char d = 0x90 | n; - msgpack_pack_append_buffer(x, &d, 1); - } else if(n < 65536) { - unsigned char buf[3]; - buf[0] = 0xdc; _msgpack_store16(&buf[1], (uint16_t)n); - msgpack_pack_append_buffer(x, buf, 3); - } else { - unsigned char buf[5]; - buf[0] = 0xdd; _msgpack_store32(&buf[1], (uint32_t)n); - msgpack_pack_append_buffer(x, buf, 5); - } -} - - -/* - * Map - */ - -msgpack_pack_inline_func(_map)(msgpack_pack_user x, unsigned int n) -{ - if(n < 16) { - unsigned char d = 0x80 | n; - msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); - } else if(n < 65536) { - unsigned char buf[3]; - buf[0] = 0xde; _msgpack_store16(&buf[1], (uint16_t)n); - msgpack_pack_append_buffer(x, buf, 3); - } else { - unsigned char buf[5]; - buf[0] = 0xdf; _msgpack_store32(&buf[1], (uint32_t)n); - msgpack_pack_append_buffer(x, buf, 5); - } -} - - -/* - * Raw - */ - -msgpack_pack_inline_func(_raw)(msgpack_pack_user x, size_t l) -{ - if(l < 32) { - unsigned char d = 0xa0 | l; - msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); - } else if(l < 65536) { - unsigned char buf[3]; - buf[0] = 0xda; _msgpack_store16(&buf[1], (uint16_t)l); - msgpack_pack_append_buffer(x, buf, 3); - } else { - unsigned char buf[5]; - buf[0] = 0xdb; _msgpack_store32(&buf[1], (uint32_t)l); - msgpack_pack_append_buffer(x, buf, 5); - } -} - -msgpack_pack_inline_func(_raw_body)(msgpack_pack_user x, const void* b, size_t l) -{ - msgpack_pack_append_buffer(x, (const unsigned char*)b, l); -} - -#undef msgpack_pack_inline_func -#undef msgpack_pack_user -#undef msgpack_pack_append_buffer - -#undef TAKE8_8 -#undef TAKE8_16 -#undef TAKE8_32 -#undef TAKE8_64 - -#undef msgpack_pack_real_uint8 -#undef msgpack_pack_real_uint16 -#undef msgpack_pack_real_uint32 -#undef msgpack_pack_real_uint64 -#undef msgpack_pack_real_int8 -#undef msgpack_pack_real_int16 -#undef msgpack_pack_real_int32 -#undef msgpack_pack_real_int64 - diff --git a/php/msgpack/sysdep.h b/php/msgpack/sysdep.h deleted file mode 100644 index 8b4ead7a..00000000 --- a/php/msgpack/sysdep.h +++ /dev/null @@ -1,120 +0,0 @@ -/* - * MessagePack system dependencies - * - * Copyright (C) 2008-2010 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -#ifndef MSGPACK_SYSDEP_H__ -#define MSGPACK_SYSDEP_H__ - -#include -#include -#if defined(_MSC_VER) && _MSC_VER < 1600 -typedef __int8 int8_t; -typedef unsigned __int8 uint8_t; -typedef __int16 int16_t; -typedef unsigned __int16 uint16_t; -typedef __int32 int32_t; -typedef unsigned __int32 uint32_t; -typedef __int64 int64_t; -typedef unsigned __int64 uint64_t; -#elif defined(_MSC_VER) // && _MSC_VER >= 1600 -#include -#else -#include -#include -#endif - - -#ifdef _WIN32 -typedef long _msgpack_atomic_counter_t; -#define _msgpack_sync_decr_and_fetch(ptr) InterlockedDecrement(ptr) -#define _msgpack_sync_incr_and_fetch(ptr) InterlockedIncrement(ptr) -#else -typedef unsigned int _msgpack_atomic_counter_t; -#define _msgpack_sync_decr_and_fetch(ptr) __sync_sub_and_fetch(ptr, 1) -#define _msgpack_sync_incr_and_fetch(ptr) __sync_add_and_fetch(ptr, 1) -#endif - - -#ifdef _WIN32 -#include - -#ifdef __cplusplus -/* numeric_limits::min,max */ -#ifdef max -#undef max -#endif -#ifdef min -#undef min -#endif -#endif - -#else -#include /* __BYTE_ORDER */ -#endif - -#if !defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__) -#if __BYTE_ORDER == __LITTLE_ENDIAN -#define __LITTLE_ENDIAN__ -#elif __BYTE_ORDER == __BIG_ENDIAN -#define __BIG_ENDIAN__ -#endif -#endif - -#ifdef __LITTLE_ENDIAN__ - -#define _msgpack_be16(x) ntohs(x) -#define _msgpack_be32(x) ntohl(x) - -#if defined(_byteswap_uint64) || _MSC_VER >= 1400 -# define _msgpack_be64(x) (_byteswap_uint64(x)) -#elif defined(bswap_64) -# define _msgpack_be64(x) bswap_64(x) -#elif defined(__DARWIN_OSSwapInt64) -# define _msgpack_be64(x) __DARWIN_OSSwapInt64(x) -#else -#define _msgpack_be64(x) \ - ( ((((uint64_t)x) << 56) & 0xff00000000000000ULL ) | \ - ((((uint64_t)x) << 40) & 0x00ff000000000000ULL ) | \ - ((((uint64_t)x) << 24) & 0x0000ff0000000000ULL ) | \ - ((((uint64_t)x) << 8) & 0x000000ff00000000ULL ) | \ - ((((uint64_t)x) >> 8) & 0x00000000ff000000ULL ) | \ - ((((uint64_t)x) >> 24) & 0x0000000000ff0000ULL ) | \ - ((((uint64_t)x) >> 40) & 0x000000000000ff00ULL ) | \ - ((((uint64_t)x) >> 56) & 0x00000000000000ffULL ) ) -#endif - -#else -#define _msgpack_be16(x) (x) -#define _msgpack_be32(x) (x) -#define _msgpack_be64(x) (x) -#endif - - -#define _msgpack_store16(to, num) \ - do { uint16_t val = _msgpack_be16(num); memcpy(to, &val, 2); } while(0); -#define _msgpack_store32(to, num) \ - do { uint32_t val = _msgpack_be32(num); memcpy(to, &val, 4); } while(0); -#define _msgpack_store64(to, num) \ - do { uint64_t val = _msgpack_be64(num); memcpy(to, &val, 8); } while(0); - - -#define _msgpack_load16(cast, from) ((cast)_msgpack_be16(*(uint16_t*)from)) -#define _msgpack_load32(cast, from) ((cast)_msgpack_be32(*(uint32_t*)from)) -#define _msgpack_load64(cast, from) ((cast)_msgpack_be64(*(uint64_t*)from)) - - -#endif /* msgpack/sysdep.h */ - diff --git a/php/msgpack/unpack_define.h b/php/msgpack/unpack_define.h deleted file mode 100644 index 959d3519..00000000 --- a/php/msgpack/unpack_define.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * MessagePack unpacking routine template - * - * Copyright (C) 2008-2010 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -#ifndef MSGPACK_UNPACK_DEFINE_H__ -#define MSGPACK_UNPACK_DEFINE_H__ - -#include "msgpack/sysdep.h" -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - - -#ifndef MSGPACK_EMBED_STACK_SIZE -#define MSGPACK_EMBED_STACK_SIZE 32 -#endif - - -typedef enum { - CS_HEADER = 0x00, // nil - - //CS_ = 0x01, - //CS_ = 0x02, // false - //CS_ = 0x03, // true - - //CS_ = 0x04, - //CS_ = 0x05, - //CS_ = 0x06, - //CS_ = 0x07, - - //CS_ = 0x08, - //CS_ = 0x09, - CS_FLOAT = 0x0a, - CS_DOUBLE = 0x0b, - CS_UINT_8 = 0x0c, - CS_UINT_16 = 0x0d, - CS_UINT_32 = 0x0e, - CS_UINT_64 = 0x0f, - CS_INT_8 = 0x10, - CS_INT_16 = 0x11, - CS_INT_32 = 0x12, - CS_INT_64 = 0x13, - - //CS_ = 0x14, - //CS_ = 0x15, - //CS_BIG_INT_16 = 0x16, - //CS_BIG_INT_32 = 0x17, - //CS_BIG_FLOAT_16 = 0x18, - //CS_BIG_FLOAT_32 = 0x19, - CS_RAW_16 = 0x1a, - CS_RAW_32 = 0x1b, - CS_ARRAY_16 = 0x1c, - CS_ARRAY_32 = 0x1d, - CS_MAP_16 = 0x1e, - CS_MAP_32 = 0x1f, - - //ACS_BIG_INT_VALUE, - //ACS_BIG_FLOAT_VALUE, - ACS_RAW_VALUE, -} msgpack_unpack_state; - - -typedef enum { - CT_ARRAY_ITEM, - CT_MAP_KEY, - CT_MAP_VALUE, -} msgpack_container_type; - - -#ifdef __cplusplus -} -#endif - -#endif /* msgpack/unpack_define.h */ - diff --git a/php/msgpack/unpack_template.h b/php/msgpack/unpack_template.h deleted file mode 100644 index beed4c4c..00000000 --- a/php/msgpack/unpack_template.h +++ /dev/null @@ -1,412 +0,0 @@ -/* - * MessagePack unpacking routine template - * - * Copyright (C) 2008-2010 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef msgpack_unpack_func -#error msgpack_unpack_func template is not defined -#endif - -#ifndef msgpack_unpack_callback -#error msgpack_unpack_callback template is not defined -#endif - -#ifndef msgpack_unpack_struct -#error msgpack_unpack_struct template is not defined -#endif - -#ifndef msgpack_unpack_struct_decl -#define msgpack_unpack_struct_decl(name) msgpack_unpack_struct(name) -#endif - -#ifndef msgpack_unpack_object -#error msgpack_unpack_object type is not defined -#endif - -#ifndef msgpack_unpack_user -#error msgpack_unpack_user type is not defined -#endif - -#ifndef USE_CASE_RANGE -#if !defined(_MSC_VER) -#define USE_CASE_RANGE -#endif -#endif - -msgpack_unpack_struct_decl(_stack) { - msgpack_unpack_object obj; - size_t count; - unsigned int ct; - msgpack_unpack_object map_key; -}; - -msgpack_unpack_struct_decl(_context) { - msgpack_unpack_user user; - unsigned int cs; - unsigned int trail; - unsigned int top; - /* - msgpack_unpack_struct(_stack)* stack; - unsigned int stack_size; - msgpack_unpack_struct(_stack) embed_stack[MSGPACK_EMBED_STACK_SIZE]; - */ - msgpack_unpack_struct(_stack) stack[MSGPACK_EMBED_STACK_SIZE]; -}; - - -msgpack_unpack_func(void, _init)(msgpack_unpack_struct(_context)* ctx) -{ - ctx->cs = CS_HEADER; - ctx->trail = 0; - ctx->top = 0; - /* - ctx->stack = ctx->embed_stack; - ctx->stack_size = MSGPACK_EMBED_STACK_SIZE; - */ - ctx->stack[0].obj = msgpack_unpack_callback(_root)(&ctx->user); -} - -/* -msgpack_unpack_func(void, _destroy)(msgpack_unpack_struct(_context)* ctx) -{ - if(ctx->stack_size != MSGPACK_EMBED_STACK_SIZE) { - free(ctx->stack); - } -} -*/ - -msgpack_unpack_func(msgpack_unpack_object, _data)(msgpack_unpack_struct(_context)* ctx) -{ - return (ctx)->stack[0].obj; -} - - -msgpack_unpack_func(int, _execute)(msgpack_unpack_struct(_context)* ctx, const char* data, size_t len, size_t* off) -{ -#ifndef _MSC_VER - assert(len >= *off); -#endif - - const unsigned char* p = (unsigned char*)data + *off; - const unsigned char* const pe = (unsigned char*)data + len; - const void* n = NULL; - - unsigned int trail = ctx->trail; - unsigned int cs = ctx->cs; - unsigned int top = ctx->top; - - int ret; - - msgpack_unpack_struct(_stack)* stack = ctx->stack; - /* - unsigned int stack_size = ctx->stack_size; - */ - msgpack_unpack_user* user = &ctx->user; - - msgpack_unpack_object obj; - msgpack_unpack_struct(_stack)* c = NULL; - -#define push_simple_value(func) \ - if(msgpack_unpack_callback(func)(user, &obj) < 0) { goto _failed; } \ - goto _push -#define push_fixed_value(func, arg) \ - if(msgpack_unpack_callback(func)(user, arg, &obj) < 0) { goto _failed; } \ - goto _push -#define push_variable_value(func, base, pos, len) \ - if(msgpack_unpack_callback(func)(user, \ - (const char*)base, (const char*)pos, len, &obj) < 0) { goto _failed; } \ - goto _push - -#define again_fixed_trail(_cs, trail_len) \ - trail = trail_len; \ - cs = _cs; \ - goto _fixed_trail_again -#define again_fixed_trail_if_zero(_cs, trail_len, ifzero) \ - trail = trail_len; \ - if(trail == 0) { goto ifzero; } \ - cs = _cs; \ - goto _fixed_trail_again - -#define start_container(func, count_, ct_) \ - if(top >= MSGPACK_EMBED_STACK_SIZE) { goto _failed; } /* FIXME */ \ - if(msgpack_unpack_callback(func)(user, count_, &stack[top].obj) < 0) { goto _failed; } \ - if((count_) == 0) { obj = stack[top].obj; goto _push; } \ - stack[top].ct = ct_; \ - stack[top].count = count_; \ - ++top; \ - /*printf("container %d count %d stack %d\n",stack[top].obj,count_,top);*/ \ - /*printf("stack push %d\n", top);*/ \ - /* FIXME \ - if(top >= stack_size) { \ - if(stack_size == MSGPACK_EMBED_STACK_SIZE) { \ - size_t csize = sizeof(msgpack_unpack_struct(_stack)) * MSGPACK_EMBED_STACK_SIZE; \ - size_t nsize = csize * 2; \ - msgpack_unpack_struct(_stack)* tmp = (msgpack_unpack_struct(_stack)*)malloc(nsize); \ - if(tmp == NULL) { goto _failed; } \ - memcpy(tmp, ctx->stack, csize); \ - ctx->stack = stack = tmp; \ - ctx->stack_size = stack_size = MSGPACK_EMBED_STACK_SIZE * 2; \ - } else { \ - size_t nsize = sizeof(msgpack_unpack_struct(_stack)) * ctx->stack_size * 2; \ - msgpack_unpack_struct(_stack)* tmp = (msgpack_unpack_struct(_stack)*)realloc(ctx->stack, nsize); \ - if(tmp == NULL) { goto _failed; } \ - ctx->stack = stack = tmp; \ - ctx->stack_size = stack_size = stack_size * 2; \ - } \ - } \ - */ \ - goto _header_again - -#define NEXT_CS(p) \ - ((unsigned int)*p & 0x1f) - -#ifdef USE_CASE_RANGE -#define SWITCH_RANGE_BEGIN switch(*p) { -#define SWITCH_RANGE(FROM, TO) case FROM ... TO: -#define SWITCH_RANGE_DEFAULT default: -#define SWITCH_RANGE_END } -#else -#define SWITCH_RANGE_BEGIN { if(0) { -#define SWITCH_RANGE(FROM, TO) } else if(FROM <= *p && *p <= TO) { -#define SWITCH_RANGE_DEFAULT } else { -#define SWITCH_RANGE_END } } -#endif - - if(p == pe) { goto _out; } - do { - switch(cs) { - case CS_HEADER: - SWITCH_RANGE_BEGIN - SWITCH_RANGE(0x00, 0x7f) // Positive Fixnum - push_fixed_value(_uint8, *(uint8_t*)p); - SWITCH_RANGE(0xe0, 0xff) // Negative Fixnum - push_fixed_value(_int8, *(int8_t*)p); - SWITCH_RANGE(0xc0, 0xdf) // Variable - switch(*p) { - case 0xc0: // nil - push_simple_value(_nil); - //case 0xc1: // string - // again_terminal_trail(NEXT_CS(p), p+1); - case 0xc2: // false - push_simple_value(_false); - case 0xc3: // true - push_simple_value(_true); - //case 0xc4: - //case 0xc5: - //case 0xc6: - //case 0xc7: - //case 0xc8: - //case 0xc9: - case 0xca: // float - case 0xcb: // double - case 0xcc: // unsigned int 8 - case 0xcd: // unsigned int 16 - case 0xce: // unsigned int 32 - case 0xcf: // unsigned int 64 - case 0xd0: // signed int 8 - case 0xd1: // signed int 16 - case 0xd2: // signed int 32 - case 0xd3: // signed int 64 - again_fixed_trail(NEXT_CS(p), 1 << (((unsigned int)*p) & 0x03)); - //case 0xd4: - //case 0xd5: - //case 0xd6: // big integer 16 - //case 0xd7: // big integer 32 - //case 0xd8: // big float 16 - //case 0xd9: // big float 32 - case 0xda: // raw 16 - case 0xdb: // raw 32 - case 0xdc: // array 16 - case 0xdd: // array 32 - case 0xde: // map 16 - case 0xdf: // map 32 - again_fixed_trail(NEXT_CS(p), 2 << (((unsigned int)*p) & 0x01)); - default: - goto _failed; - } - SWITCH_RANGE(0xa0, 0xbf) // FixRaw - again_fixed_trail_if_zero(ACS_RAW_VALUE, ((unsigned int)*p & 0x1f), _raw_zero); - SWITCH_RANGE(0x90, 0x9f) // FixArray - start_container(_array, ((unsigned int)*p) & 0x0f, CT_ARRAY_ITEM); - SWITCH_RANGE(0x80, 0x8f) // FixMap - start_container(_map, ((unsigned int)*p) & 0x0f, CT_MAP_KEY); - - SWITCH_RANGE_DEFAULT - goto _failed; - SWITCH_RANGE_END - // end CS_HEADER - - - _fixed_trail_again: - ++p; - - default: - if((size_t)(pe - p) < trail) { goto _out; } - n = p; p += trail - 1; - switch(cs) { - //case CS_ - //case CS_ - case CS_FLOAT: { - union { uint32_t i; float f; } mem; - mem.i = _msgpack_load32(uint32_t,n); - push_fixed_value(_float, mem.f); } - case CS_DOUBLE: { - union { uint64_t i; double f; } mem; - mem.i = _msgpack_load64(uint64_t,n); - push_fixed_value(_double, mem.f); } - case CS_UINT_8: - push_fixed_value(_uint8, *(uint8_t*)n); - case CS_UINT_16: - push_fixed_value(_uint16, _msgpack_load16(uint16_t,n)); - case CS_UINT_32: - push_fixed_value(_uint32, _msgpack_load32(uint32_t,n)); - case CS_UINT_64: - push_fixed_value(_uint64, _msgpack_load64(uint64_t,n)); - - case CS_INT_8: - push_fixed_value(_int8, *(int8_t*)n); - case CS_INT_16: - push_fixed_value(_int16, _msgpack_load16(int16_t,n)); - case CS_INT_32: - push_fixed_value(_int32, _msgpack_load32(int32_t,n)); - case CS_INT_64: - push_fixed_value(_int64, _msgpack_load64(int64_t,n)); - - //case CS_ - //case CS_ - //case CS_BIG_INT_16: - // again_fixed_trail_if_zero(ACS_BIG_INT_VALUE, _msgpack_load16(uint16_t,n), _big_int_zero); - //case CS_BIG_INT_32: - // again_fixed_trail_if_zero(ACS_BIG_INT_VALUE, _msgpack_load32(uint32_t,n), _big_int_zero); - //case ACS_BIG_INT_VALUE: - //_big_int_zero: - // // FIXME - // push_variable_value(_big_int, data, n, trail); - - //case CS_BIG_FLOAT_16: - // again_fixed_trail_if_zero(ACS_BIG_FLOAT_VALUE, _msgpack_load16(uint16_t,n), _big_float_zero); - //case CS_BIG_FLOAT_32: - // again_fixed_trail_if_zero(ACS_BIG_FLOAT_VALUE, _msgpack_load32(uint32_t,n), _big_float_zero); - //case ACS_BIG_FLOAT_VALUE: - //_big_float_zero: - // // FIXME - // push_variable_value(_big_float, data, n, trail); - - case CS_RAW_16: - again_fixed_trail_if_zero(ACS_RAW_VALUE, _msgpack_load16(uint16_t,n), _raw_zero); - case CS_RAW_32: - again_fixed_trail_if_zero(ACS_RAW_VALUE, _msgpack_load32(uint32_t,n), _raw_zero); - case ACS_RAW_VALUE: - _raw_zero: - push_variable_value(_raw, data, n, trail); - - case CS_ARRAY_16: - start_container(_array, _msgpack_load16(uint16_t,n), CT_ARRAY_ITEM); - case CS_ARRAY_32: - /* FIXME security guard */ - start_container(_array, _msgpack_load32(uint32_t,n), CT_ARRAY_ITEM); - - case CS_MAP_16: - start_container(_map, _msgpack_load16(uint16_t,n), CT_MAP_KEY); - case CS_MAP_32: - /* FIXME security guard */ - start_container(_map, _msgpack_load32(uint32_t,n), CT_MAP_KEY); - - default: - goto _failed; - } - } - -_push: - if(top == 0) { goto _finish; } - c = &stack[top-1]; - switch(c->ct) { - case CT_ARRAY_ITEM: - if(msgpack_unpack_callback(_array_item)(user, &c->obj, obj) < 0) { goto _failed; } - if(--c->count == 0) { - obj = c->obj; - --top; - /*printf("stack pop %d\n", top);*/ - goto _push; - } - goto _header_again; - case CT_MAP_KEY: - c->map_key = obj; - c->ct = CT_MAP_VALUE; - goto _header_again; - case CT_MAP_VALUE: - if(msgpack_unpack_callback(_map_item)(user, &c->obj, c->map_key, obj) < 0) { goto _failed; } - if(--c->count == 0) { - obj = c->obj; - --top; - /*printf("stack pop %d\n", top);*/ - goto _push; - } - c->ct = CT_MAP_KEY; - goto _header_again; - - default: - goto _failed; - } - -_header_again: - cs = CS_HEADER; - ++p; - } while(p != pe); - goto _out; - - -_finish: - stack[0].obj = obj; - ++p; - ret = 1; - /*printf("-- finish --\n"); */ - goto _end; - -_failed: - /*printf("** FAILED **\n"); */ - ret = -1; - goto _end; - -_out: - ret = 0; - goto _end; - -_end: - ctx->cs = cs; - ctx->trail = trail; - ctx->top = top; - *off = p - (const unsigned char*)data; - - return ret; -} - - -#undef msgpack_unpack_func -#undef msgpack_unpack_callback -#undef msgpack_unpack_struct -#undef msgpack_unpack_object -#undef msgpack_unpack_user - -#undef push_simple_value -#undef push_fixed_value -#undef push_variable_value -#undef again_fixed_trail -#undef again_fixed_trail_if_zero -#undef start_container - -#undef NEXT_CS - diff --git a/php/msgpack/version.h b/php/msgpack/version.h deleted file mode 100644 index 13671d1a..00000000 --- a/php/msgpack/version.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * MessagePack for C version information - * - * Copyright (C) 2008-2009 FURUHASHI Sadayuki - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -#ifndef MSGPACK_VERSION_H__ -#define MSGPACK_VERSION_H__ - -#ifdef __cplusplus -extern "C" { -#endif - - -const char* msgpack_version(void); -int msgpack_version_major(void); -int msgpack_version_minor(void); - -#define MSGPACK_VERSION "0.5.4" -#define MSGPACK_VERSION_MAJOR 0 -#define MSGPACK_VERSION_MINOR 5 - - -#ifdef __cplusplus -} -#endif - -#endif /* msgpack/version.h */ - diff --git a/php/msgpack_class.c b/php/msgpack_class.c deleted file mode 100644 index 383ffda5..00000000 --- a/php/msgpack_class.c +++ /dev/null @@ -1,687 +0,0 @@ - -#include "php.h" - -#include "php_msgpack.h" -#include "msgpack_pack.h" -#include "msgpack_unpack.h" -#include "msgpack_class.h" -#include "msgpack_convert.h" -#include "msgpack_errors.h" - -typedef struct { - zend_object object; - long php_only; -} php_msgpack_base_t; - -typedef struct { - zend_object object; - smart_str buffer; - zval *retval; - long offset; - msgpack_unpack_t mp; - msgpack_unserialize_data_t var_hash; - long php_only; - zend_bool finished; - int error; -} php_msgpack_unpacker_t; - -#if ZEND_MODULE_API_NO >= 20060613 -# define MSGPACK_METHOD_BASE(classname, name) zim_##classname##_##name -#else -# define MSGPACK_METHOD_BASE(classname, name) zif_##classname##_##name -#endif - -#if ZEND_MODULE_API_NO >= 20090115 -# define PUSH_PARAM(arg) zend_vm_stack_push(arg TSRMLS_CC) -# define POP_PARAM() (void)zend_vm_stack_pop(TSRMLS_C) -# define PUSH_EO_PARAM() -# define POP_EO_PARAM() -#else -# define PUSH_PARAM(arg) zend_ptr_stack_push(&EG(argument_stack), arg) -# define POP_PARAM() (void)zend_ptr_stack_pop(&EG(argument_stack)) -# define PUSH_EO_PARAM() zend_ptr_stack_push(&EG(argument_stack), NULL) -# define POP_EO_PARAM() (void)zend_ptr_stack_pop(&EG(argument_stack)) -#endif - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) -#define MSGPACK_METHOD_HELPER(classname, name, retval, thisptr, num, param) \ - PUSH_PARAM(param); PUSH_PARAM((void*)num); \ - PUSH_EO_PARAM(); \ - MSGPACK_METHOD_BASE(classname, name)(num, retval, NULL, thisptr, 0 TSRMLS_CC); \ - POP_EO_PARAM(); \ - POP_PARAM(); POP_PARAM(); -#define MSGPACK_METHOD(classname, name, retval, thisptr) \ - MSGPACK_METHOD_BASE(classname, name)(0, retval, NULL, thisptr, 0 TSRMLS_CC) -#else -#define MSGPACK_METHOD_HELPER(classname, name, retval, thisptr, num, param) \ - PUSH_PARAM(param); PUSH_PARAM((void*)num); \ - PUSH_EO_PARAM(); \ - MSGPACK_METHOD_BASE(classname, name)(num, retval, thisptr, 0 TSRMLS_CC); \ - POP_EO_PARAM(); \ - POP_PARAM(); POP_PARAM(); -#define MSGPACK_METHOD(classname, name, retval, thisptr) \ - MSGPACK_METHOD_BASE(classname, name)(0, retval, thisptr, 0 TSRMLS_CC) -#endif - -#define MSGPACK_METHOD1(classname, name, retval, thisptr, param1) \ - MSGPACK_METHOD_HELPER(classname, name, retval, thisptr, 1, param1); - -#define MSGPACK_BASE_OBJECT \ - php_msgpack_base_t *base; \ - base = (php_msgpack_base_t *)zend_object_store_get_object(getThis() TSRMLS_CC); - -#define MSGPACK_UNPACKER_OBJECT \ - php_msgpack_unpacker_t *unpacker; \ - unpacker = (php_msgpack_unpacker_t *)zend_object_store_get_object(getThis() TSRMLS_CC); - -/* MessagePack */ -static zend_class_entry *msgpack_ce = NULL; - -static ZEND_METHOD(msgpack, __construct); -static ZEND_METHOD(msgpack, setOption); -static ZEND_METHOD(msgpack, pack); -static ZEND_METHOD(msgpack, unpack); -static ZEND_METHOD(msgpack, unpacker); - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_base___construct, 0, 0, 0) - ZEND_ARG_INFO(0, opt) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_base_setOption, 0, 0, 2) - ZEND_ARG_INFO(0, option) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_base_pack, 0, 0, 1) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_base_unpack, 0, 0, 1) - ZEND_ARG_INFO(0, str) - ZEND_ARG_INFO(0, object) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_base_unpacker, 0, 0, 0) -ZEND_END_ARG_INFO() - -static const zend_function_entry msgpack_base_methods[] = { - ZEND_ME(msgpack, __construct, - arginfo_msgpack_base___construct, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack, setOption, arginfo_msgpack_base_setOption, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack, pack, arginfo_msgpack_base_pack, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack, unpack, arginfo_msgpack_base_unpack, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack, unpacker, arginfo_msgpack_base_unpacker, ZEND_ACC_PUBLIC) - {NULL, NULL, NULL} -}; - -/* MessagePackUnpacker */ -static zend_class_entry *msgpack_unpacker_ce = NULL; - -static ZEND_METHOD(msgpack_unpacker, __construct); -static ZEND_METHOD(msgpack_unpacker, __destruct); -static ZEND_METHOD(msgpack_unpacker, setOption); -static ZEND_METHOD(msgpack_unpacker, feed); -static ZEND_METHOD(msgpack_unpacker, execute); -static ZEND_METHOD(msgpack_unpacker, data); -static ZEND_METHOD(msgpack_unpacker, reset); - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker___construct, 0, 0, 0) - ZEND_ARG_INFO(0, opt) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker___destruct, 0, 0, 0) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker_setOption, 0, 0, 2) - ZEND_ARG_INFO(0, option) - ZEND_ARG_INFO(0, value) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker_feed, 0, 0, 1) - ZEND_ARG_INFO(0, str) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker_execute, 1, 0, 0) - ZEND_ARG_INFO(0, str) - ZEND_ARG_INFO(1, offset) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker_data, 0, 0, 0) - ZEND_ARG_INFO(0, object) -ZEND_END_ARG_INFO() - -ZEND_BEGIN_ARG_INFO_EX(arginfo_msgpack_unpacker_reset, 0, 0, 0) -ZEND_END_ARG_INFO() - -static const zend_function_entry msgpack_unpacker_methods[] = { - ZEND_ME(msgpack_unpacker, __construct, - arginfo_msgpack_unpacker___construct, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, __destruct, - arginfo_msgpack_unpacker___destruct, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, setOption, - arginfo_msgpack_unpacker_setOption, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, feed, - arginfo_msgpack_unpacker_feed, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, execute, - arginfo_msgpack_unpacker_execute, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, data, - arginfo_msgpack_unpacker_data, ZEND_ACC_PUBLIC) - ZEND_ME(msgpack_unpacker, reset, - arginfo_msgpack_unpacker_reset, ZEND_ACC_PUBLIC) - {NULL, NULL, NULL} -}; - -static void php_msgpack_base_free(php_msgpack_base_t *base TSRMLS_DC) -{ -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - zend_object_std_dtor(&base->object TSRMLS_CC); -#else - if (base->object.properties) - { - zend_hash_destroy(base->object.properties); - FREE_HASHTABLE(base->object.properties); - } -#endif - efree(base); -} - -static zend_object_value php_msgpack_base_new(zend_class_entry *ce TSRMLS_DC) -{ - zend_object_value retval; - php_msgpack_base_t *base; -#if PHP_API_VERSION < 20100412 - zval *tmp; -#endif - - base = emalloc(sizeof(php_msgpack_base_t)); - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - zend_object_std_init(&base->object, ce TSRMLS_CC); -#else - ALLOC_HASHTABLE(base->object.properties); - zend_hash_init(base->object.properties, 0, NULL, ZVAL_PTR_DTOR, 0); - base->object.ce = ce; -#endif - -#if PHP_API_VERSION < 20100412 - zend_hash_copy( - base->object.properties, &ce->default_properties, - (copy_ctor_func_t)zval_add_ref, (void *)&tmp, sizeof(zval *)); -#else - object_properties_init(&base->object, ce); -#endif - - retval.handle = zend_objects_store_put( - base, (zend_objects_store_dtor_t)zend_objects_destroy_object, - (zend_objects_free_object_storage_t)php_msgpack_base_free, - NULL TSRMLS_CC); - retval.handlers = zend_get_std_object_handlers(); - - return retval; -} - -static void php_msgpack_unpacker_free( - php_msgpack_unpacker_t *unpacker TSRMLS_DC) -{ -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - zend_object_std_dtor(&unpacker->object TSRMLS_CC); -#else - if (unpacker->object.properties) - { - zend_hash_destroy(unpacker->object.properties); - FREE_HASHTABLE(unpacker->object.properties); - } -#endif - efree(unpacker); -} - -static zend_object_value php_msgpack_unpacker_new( - zend_class_entry *ce TSRMLS_DC) -{ - zend_object_value retval; - php_msgpack_unpacker_t *unpacker; -#if PHP_API_VERSION < 20100412 - zval *tmp; -#endif - - unpacker = emalloc(sizeof(php_msgpack_unpacker_t)); - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - zend_object_std_init(&unpacker->object, ce TSRMLS_CC); -#else - ALLOC_HASHTABLE(unpacker->object.properties); - zend_hash_init(unpacker->object.properties, 0, NULL, ZVAL_PTR_DTOR, 0); - unpacker->object.ce = ce; -#endif - -#if PHP_API_VERSION < 20100412 - zend_hash_copy( - unpacker->object.properties, &ce->default_properties, - (copy_ctor_func_t)zval_add_ref, (void *)&tmp, sizeof(zval *)); -#else - object_properties_init(&unpacker->object, ce); -#endif - - retval.handle = zend_objects_store_put( - unpacker, (zend_objects_store_dtor_t)zend_objects_destroy_object, - (zend_objects_free_object_storage_t)php_msgpack_unpacker_free, - NULL TSRMLS_CC); - retval.handlers = zend_get_std_object_handlers(); - - return retval; -} - -/* MessagePack */ -static ZEND_METHOD(msgpack, __construct) -{ - zend_bool php_only = MSGPACK_G(php_only); - MSGPACK_BASE_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "|b", &php_only) == FAILURE) - { - return; - } - - base->php_only = php_only; -} - -static ZEND_METHOD(msgpack, setOption) -{ - long option; - zval *value; - MSGPACK_BASE_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "lz", &option, &value) == FAILURE) - { - return; - } - - switch (option) - { - case MSGPACK_CLASS_OPT_PHPONLY: - convert_to_boolean(value); - base->php_only = Z_BVAL_P(value); - break; - default: - MSGPACK_WARNING("[msgpack] (MessagePack::setOption) " - "error setting msgpack option"); - RETURN_FALSE; - break; - } - - RETURN_TRUE; -} - -static ZEND_METHOD(msgpack, pack) -{ - zval *parameter; - smart_str buf = {0}; - int php_only = MSGPACK_G(php_only); - MSGPACK_BASE_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "z", ¶meter) == FAILURE) - { - return; - } - - MSGPACK_G(php_only) = base->php_only; - - php_msgpack_serialize(&buf, parameter TSRMLS_CC); - - MSGPACK_G(php_only) = php_only; - - ZVAL_STRINGL(return_value, buf.c, buf.len, 1); - - smart_str_free(&buf); -} - -static ZEND_METHOD(msgpack, unpack) -{ - char *str; - int str_len; - zval *object = NULL; - int php_only = MSGPACK_G(php_only); - MSGPACK_BASE_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "s|z", - &str, &str_len, &object) == FAILURE) - { - return; - } - - if (!str_len) - { - RETURN_NULL(); - } - - MSGPACK_G(php_only) = base->php_only; - - if (object == NULL) - { - php_msgpack_unserialize(return_value, str, str_len TSRMLS_CC); - } - else - { - zval *zv; - - ALLOC_INIT_ZVAL(zv); - php_msgpack_unserialize(zv, str, str_len TSRMLS_CC); - - if (msgpack_convert_template(return_value, object, &zv) != SUCCESS) - { - RETURN_NULL(); - } - } - - MSGPACK_G(php_only) = php_only; -} - -static ZEND_METHOD(msgpack, unpacker) -{ - zval temp, *opt; - MSGPACK_BASE_OBJECT; - - ALLOC_INIT_ZVAL(opt); - ZVAL_BOOL(opt, base->php_only); - - object_init_ex(return_value, msgpack_unpacker_ce); - - MSGPACK_METHOD1(msgpack_unpacker, __construct, &temp, return_value, opt); - - zval_ptr_dtor(&opt); -} - -/* MessagePackUnpacker */ -static ZEND_METHOD(msgpack_unpacker, __construct) -{ - zend_bool php_only = MSGPACK_G(php_only); - MSGPACK_UNPACKER_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "|b", &php_only) == FAILURE) - { - return; - } - - unpacker->php_only = php_only; - - unpacker->buffer.c = NULL; - unpacker->buffer.len = 0; - unpacker->buffer.a = 0; - unpacker->retval = NULL; - unpacker->offset = 0; - unpacker->finished = 0; - unpacker->error = 0; - - template_init(&unpacker->mp); - - msgpack_unserialize_var_init(&unpacker->var_hash); - - (&unpacker->mp)->user.var_hash = - (msgpack_unserialize_data_t *)&unpacker->var_hash; -} - -static ZEND_METHOD(msgpack_unpacker, __destruct) -{ - MSGPACK_UNPACKER_OBJECT; - - smart_str_free(&unpacker->buffer); - - if (unpacker->retval != NULL) - { - zval_ptr_dtor(&unpacker->retval); - } - - msgpack_unserialize_var_destroy(&unpacker->var_hash, unpacker->error); -} - -static ZEND_METHOD(msgpack_unpacker, setOption) -{ - long option; - zval *value; - MSGPACK_UNPACKER_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "lz", &option, &value) == FAILURE) - { - return; - } - - switch (option) - { - case MSGPACK_CLASS_OPT_PHPONLY: - convert_to_boolean(value); - unpacker->php_only = Z_BVAL_P(value); - break; - default: - MSGPACK_WARNING("[msgpack] (MessagePackUnpacker::setOption) " - "error setting msgpack option"); - RETURN_FALSE; - break; - } - - RETURN_TRUE; -} - -static ZEND_METHOD(msgpack_unpacker, feed) -{ - char *str; - int str_len; - MSGPACK_UNPACKER_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len) == FAILURE) - { - return; - } - - if (!str_len) - { - RETURN_FALSE; - } - - smart_str_appendl(&unpacker->buffer, str, str_len); - - RETURN_TRUE; -} - -static ZEND_METHOD(msgpack_unpacker, execute) -{ - char *str = NULL, *data; - long str_len = 0; - zval *offset = NULL; - int ret; - size_t len, off; - int error_display = MSGPACK_G(error_display); - int php_only = MSGPACK_G(php_only); - MSGPACK_UNPACKER_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "|sz/", - &str, &str_len, &offset) == FAILURE) - { - return; - } - - if (str != NULL) - { - data = (char *)str; - len = (size_t)str_len; - if (offset != NULL) - { - off = Z_LVAL_P(offset); - } - else - { - off = 0; - } - } - else - { - data = (char *)unpacker->buffer.c; - len = unpacker->buffer.len; - off = unpacker->offset; - } - - if (unpacker->retval == NULL) - { - ALLOC_INIT_ZVAL(unpacker->retval); - } - else if (unpacker->finished) - { - zval_ptr_dtor(&unpacker->retval); - - msgpack_unserialize_var_destroy(&unpacker->var_hash, unpacker->error); - unpacker->error = 0; - - ALLOC_INIT_ZVAL(unpacker->retval); - - template_init(&unpacker->mp); - - msgpack_unserialize_var_init(&unpacker->var_hash); - - (&unpacker->mp)->user.var_hash = - (msgpack_unserialize_data_t *)&unpacker->var_hash; - } - (&unpacker->mp)->user.retval = (zval *)unpacker->retval; - - MSGPACK_G(error_display) = 0; - MSGPACK_G(php_only) = unpacker->php_only; - - ret = template_execute(&unpacker->mp, data, len, &off); - - MSGPACK_G(error_display) = error_display; - MSGPACK_G(php_only) = php_only; - - if (str != NULL) - { - if (offset != NULL) - { - ZVAL_LONG(offset, off); - } - } - else - { - unpacker->offset = off; - } - - switch (ret) - { - case MSGPACK_UNPACK_EXTRA_BYTES: - case MSGPACK_UNPACK_SUCCESS: - unpacker->finished = 1; - unpacker->error = 0; - RETURN_TRUE; - default: - unpacker->error = 1; - RETURN_FALSE; - } -} - -static ZEND_METHOD(msgpack_unpacker, data) -{ - zval *object = NULL; - MSGPACK_UNPACKER_OBJECT; - - if (zend_parse_parameters( - ZEND_NUM_ARGS() TSRMLS_CC, "|z", &object) == FAILURE) - { - return; - } - - if (unpacker->retval != NULL) - { - if (object == NULL) - { - ZVAL_ZVAL(return_value, unpacker->retval, 1, 0); - } - else - { - zval *zv; - - ALLOC_INIT_ZVAL(zv); - ZVAL_ZVAL(zv, unpacker->retval, 1, 0); - - if (msgpack_convert_object(return_value, object, &zv) != SUCCESS) - { - RETURN_NULL(); - } - } - - MSGPACK_METHOD(msgpack_unpacker, reset, NULL, getThis()); - - return; - } - - RETURN_FALSE; -} - -static ZEND_METHOD(msgpack_unpacker, reset) -{ - smart_str buffer = {0}; - MSGPACK_UNPACKER_OBJECT; - - if (unpacker->buffer.len > unpacker->offset) - { - smart_str_appendl(&buffer, unpacker->buffer.c + unpacker->offset, - unpacker->buffer.len - unpacker->offset); - } - - smart_str_free(&unpacker->buffer); - - unpacker->buffer.c = NULL; - unpacker->buffer.len = 0; - unpacker->buffer.a = 0; - unpacker->offset = 0; - unpacker->finished = 0; - - if (buffer.len > 0) - { - smart_str_appendl(&unpacker->buffer, buffer.c, buffer.len); - } - - smart_str_free(&buffer); - - if (unpacker->retval != NULL) - { - zval_ptr_dtor(&unpacker->retval); - unpacker->retval = NULL; - } - - msgpack_unserialize_var_destroy(&unpacker->var_hash, unpacker->error); - unpacker->error = 0; - - - template_init(&unpacker->mp); - - msgpack_unserialize_var_init(&unpacker->var_hash); - - (&unpacker->mp)->user.var_hash = - (msgpack_unserialize_data_t *)&unpacker->var_hash; -} - -void msgpack_init_class() -{ - zend_class_entry ce; - TSRMLS_FETCH(); - - /* base */ - INIT_CLASS_ENTRY(ce, "MessagePack", msgpack_base_methods); - msgpack_ce = zend_register_internal_class(&ce TSRMLS_CC); - msgpack_ce->create_object = php_msgpack_base_new; - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - zend_declare_class_constant_long( - msgpack_ce, ZEND_STRS("OPT_PHPONLY") - 1, - MSGPACK_CLASS_OPT_PHPONLY TSRMLS_CC); -#endif - - /* unpacker */ - INIT_CLASS_ENTRY(ce, "MessagePackUnpacker", msgpack_unpacker_methods); - msgpack_unpacker_ce = zend_register_internal_class(&ce TSRMLS_CC); - msgpack_unpacker_ce->create_object = php_msgpack_unpacker_new; -} diff --git a/php/msgpack_class.h b/php/msgpack_class.h deleted file mode 100644 index f1975238..00000000 --- a/php/msgpack_class.h +++ /dev/null @@ -1,9 +0,0 @@ - -#ifndef MSGPACK_CLASS_H -#define MSGPACK_CLASS_H - -#define MSGPACK_CLASS_OPT_PHPONLY -1001 - -void msgpack_init_class(); - -#endif diff --git a/php/msgpack_convert.c b/php/msgpack_convert.c deleted file mode 100644 index f7f3d3c2..00000000 --- a/php/msgpack_convert.c +++ /dev/null @@ -1,794 +0,0 @@ - -#include "php.h" - -#include "php_msgpack.h" -#include "msgpack_convert.h" -#include "msgpack_errors.h" - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION < 3) -# define Z_REFCOUNT_P(pz) ((pz)->refcount) -# define Z_SET_ISREF_P(pz) (pz)->is_ref = 1 -# define Z_UNSET_ISREF_P(pz) (pz)->is_ref = 0 -#endif - -#define MSGPACK_CONVERT_COPY_ZVAL(_pz, _ppz) \ - ALLOC_INIT_ZVAL(_pz); \ - *(_pz) = **(_ppz); \ - if (PZVAL_IS_REF(*(_ppz))) { \ - if (Z_REFCOUNT_P(*(_ppz)) > 0) { \ - zval_copy_ctor(_pz); \ - } else { \ - FREE_ZVAL(*(_ppz)); \ - } \ - INIT_PZVAL(_pz); \ - Z_SET_ISREF_P(_pz); \ - } else { \ - zval_copy_ctor(_pz); \ - INIT_PZVAL(_pz); \ - } - -#define MSGPACK_CONVERT_UPDATE_PROPERTY(_ht, _key, _key_len, _val, _var) \ - if (zend_symtable_update( \ - _ht, _key, _key_len, &_val, sizeof(_val), NULL) == SUCCESS) { \ - zend_hash_add(_var, _key, _key_len, &_val, sizeof(_val), NULL); \ - return SUCCESS; \ - } - -inline int msgpack_convert_long_to_properties( - HashTable *ht, HashTable **properties, HashPosition *prop_pos, - uint key_index, zval *val, HashTable *var) -{ - TSRMLS_FETCH(); - - if (*properties != NULL) - { - char *prop_key; - uint prop_key_len; - ulong prop_key_index; - zval **data = NULL; - zval *tplval = NULL; - zval **dataval = NULL; - - for (;; zend_hash_move_forward_ex(*properties, prop_pos)) - { - if (zend_hash_get_current_key_ex( - *properties, &prop_key, &prop_key_len, - &prop_key_index, 0, prop_pos) == HASH_KEY_IS_STRING) - { - if (var == NULL || - !zend_hash_exists(var, prop_key, prop_key_len)) - { - if (zend_hash_find( - ht, prop_key, prop_key_len, - (void **)&data) == SUCCESS) - { - switch (Z_TYPE_PP(data)) - { - case IS_ARRAY: - { - HashTable *dataht; - dataht = HASH_OF(val); - if (zend_hash_index_find( - dataht, prop_key_index, - (void **)dataval) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) " - "can't get data value by index", - __FUNCTION__); - return FAILURE; - } - - ALLOC_INIT_ZVAL(tplval); - if (msgpack_convert_array( - tplval, *data, dataval) == SUCCESS) - { - zend_hash_move_forward_ex( - *properties, prop_pos); - - return zend_symtable_update( - ht, prop_key, prop_key_len, - &tplval, sizeof(tplval), NULL); - } - // TODO: de we need to call dtor? - return FAILURE; - break; - } - case IS_OBJECT: - { - ALLOC_INIT_ZVAL(tplval); - if (msgpack_convert_object( - tplval, *data, &val) == SUCCESS) - { - zend_hash_move_forward_ex( - *properties, prop_pos); - - return zend_symtable_update( - ht, prop_key, prop_key_len, - &tplval, sizeof(tplval), NULL); - } - // TODO: de we need to call dtor? - return FAILURE; - break; - } - default: - zend_hash_move_forward_ex(*properties, prop_pos); - return zend_symtable_update( - ht, prop_key, prop_key_len, - &val, sizeof(val), NULL); - break; - } - } - } - } - else - { - break; - } - } - - *properties = NULL; - } - - return zend_hash_index_update(ht, key_index, &val, sizeof(val), NULL); -} - -inline int msgpack_convert_string_to_properties( - zval *object, char *key, uint key_len, zval *val, HashTable *var) -{ - zval **data = NULL; - HashTable *ht; - zend_class_entry *ce; - char *prot_name, *priv_name; - int prop_name_len; - TSRMLS_FETCH(); - - ht = HASH_OF(object); - ce = zend_get_class_entry(object TSRMLS_CC); - - /* private */ - zend_mangle_property_name( - &priv_name, &prop_name_len, ce->name, ce->name_length, key, key_len, 1); - if (zend_hash_find( - ht, priv_name, prop_name_len, (void **)&data) == SUCCESS) - { - MSGPACK_CONVERT_UPDATE_PROPERTY(ht, priv_name, prop_name_len, val, var); - } - - /* protected */ - zend_mangle_property_name( - &prot_name, &prop_name_len, "*", 1, key, key_len, 1); - if (zend_hash_find( - ht, prot_name, prop_name_len, (void **)&data) == SUCCESS) - { - MSGPACK_CONVERT_UPDATE_PROPERTY(ht, prot_name, prop_name_len, val, var); - } - - /* public */ - MSGPACK_CONVERT_UPDATE_PROPERTY(ht, key, key_len, val, var); - - return FAILURE; -} - -int msgpack_convert_array(zval *return_value, zval *tpl, zval **value) -{ - TSRMLS_FETCH(); - - if (Z_TYPE_P(tpl) == IS_ARRAY) - { - char *key; - uint key_len; - int key_type; - ulong key_index; - zval **data, **arydata; - HashPosition pos, valpos; - HashTable *ht, *htval; - int num; - - ht = HASH_OF(tpl); - // TODO: maybe need to release memory? - array_init(return_value); - - num = zend_hash_num_elements(ht); - if (num <= 0) - { - MSGPACK_WARNING( - "[msgpack] (%s) template array length is 0", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - /* string */ - if (ht->nNumOfElements != ht->nNextFreeElement) - { - htval = HASH_OF(*value); - if (!htval) - { - MSGPACK_WARNING( - "[msgpack] (%s) input data is not array", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - zend_hash_internal_pointer_reset_ex(ht, &pos); - zend_hash_internal_pointer_reset_ex(htval, &valpos); - for (;; zend_hash_move_forward_ex(ht, &pos), - zend_hash_move_forward_ex(htval, &valpos)) - { - key_type = zend_hash_get_current_key_ex( - ht, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&data, &pos) != SUCCESS) - { - continue; - } - - if (key_type == HASH_KEY_IS_STRING) - { - int (*convert_function)(zval *, zval *, zval **) = NULL; - zval **dataval, *val; - - switch (Z_TYPE_PP(data)) - { - case IS_ARRAY: - convert_function = msgpack_convert_array; - break; - case IS_OBJECT: - // case IS_STRING: - convert_function = msgpack_convert_object; - break; - default: - break; - } - - if (zend_hash_get_current_data_ex( - htval, (void *)&dataval, &valpos) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) can't get data", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - MSGPACK_CONVERT_COPY_ZVAL(val, dataval); - - if (convert_function) - { - zval *rv; - ALLOC_INIT_ZVAL(rv); - if (convert_function(rv, *data, &val) != SUCCESS) - { - zval_ptr_dtor(&val); - return FAILURE; - } - add_assoc_zval_ex(return_value, key, key_len, rv); - } - else - { - add_assoc_zval_ex(return_value, key, key_len, val); - } - } - } - - zval_ptr_dtor(value); - - return SUCCESS; - } - else - { - /* index */ - int (*convert_function)(zval *, zval *, zval **) = NULL; - - if (Z_TYPE_PP(value) != IS_ARRAY) - { - MSGPACK_WARNING( - "[msgpack] (%s) unserialized data must be array.", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - zend_hash_internal_pointer_reset_ex(ht, &pos); - - key_type = zend_hash_get_current_key_ex( - ht, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - MSGPACK_WARNING( - "[msgpack] (%s) first element in template array is empty", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&data, &pos) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) invalid template: empty array?", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - switch (Z_TYPE_PP(data)) - { - case IS_ARRAY: - convert_function = msgpack_convert_array; - break; - case IS_OBJECT: - case IS_STRING: - convert_function = msgpack_convert_object; - break; - default: - break; - } - - htval = HASH_OF(*value); - num = zend_hash_num_elements(htval); - if (num <= 0) - { - MSGPACK_WARNING( - "[msgpack] (%s) array length is 0 in unserialized data", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - zend_hash_internal_pointer_reset_ex(htval, &valpos); - for (;; zend_hash_move_forward_ex(htval, &valpos)) - { - key_type = zend_hash_get_current_key_ex( - htval, &key, &key_len, &key_index, 0, &valpos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - - if (zend_hash_get_current_data_ex( - htval, (void *)&arydata, &valpos) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) can't get next data in indexed array", - __FUNCTION__); - continue; - } - - switch (key_type) - { - case HASH_KEY_IS_LONG: - { - zval *aryval, *rv; - ALLOC_INIT_ZVAL(rv); - MSGPACK_CONVERT_COPY_ZVAL(aryval, arydata); - if (convert_function) - { - if (convert_function(rv, *data, &aryval) != SUCCESS) - { - zval_ptr_dtor(&aryval); - MSGPACK_WARNING( - "[msgpack] (%s) " - "convert failure in HASH_KEY_IS_LONG " - "in indexed array", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - add_next_index_zval(return_value, rv); - } - else - { - add_next_index_zval(return_value, aryval); - } - break; - } - case HASH_KEY_IS_STRING: - MSGPACK_WARNING( - "[msgpack] (%s) key is string", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - default: - MSGPACK_WARNING( - "[msgpack] (%s) key is not string nor array", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - } - - zval_ptr_dtor(value); - return SUCCESS; - } - } - else - { - // shouldn't reach - MSGPACK_WARNING( - "[msgpack] (%s) template is not array", - __FUNCTION__); - zval_ptr_dtor(value); - return FAILURE; - } - - // shouldn't reach - zval_ptr_dtor(value); - return FAILURE; -} - -int msgpack_convert_object(zval *return_value, zval *tpl, zval **value) -{ - zend_class_entry *ce, **pce; - TSRMLS_FETCH(); - - switch (Z_TYPE_P(tpl)) - { - case IS_STRING: - if (zend_lookup_class( - Z_STRVAL_P(tpl), Z_STRLEN_P(tpl), - &pce TSRMLS_CC) != SUCCESS) - { - MSGPACK_ERROR("[msgpack] (%s) Class '%s' not found", - __FUNCTION__, Z_STRVAL_P(tpl)); - return FAILURE; - } - ce = *pce; - break; - case IS_OBJECT: - ce = zend_get_class_entry(tpl TSRMLS_CC); - break; - default: - MSGPACK_ERROR("[msgpack] (%s) object type is unsupported", - __FUNCTION__); - return FAILURE; - } - - if (Z_TYPE_PP(value) == IS_OBJECT) - { - zend_class_entry *vce; - - vce = zend_get_class_entry(*value TSRMLS_CC); - if (strcmp(ce->name, vce->name) == 0) - { - *return_value = **value; - zval_copy_ctor(return_value); - zval_ptr_dtor(value); - return SUCCESS; - } - } - - object_init_ex(return_value, ce); - - /* Run the constructor if there is one */ - if (ce->constructor - && (ce->constructor->common.fn_flags & ZEND_ACC_PUBLIC)) - { - zval *retval_ptr = NULL; - zval ***params = NULL; - int num_args = 0; - zend_fcall_info fci; - zend_fcall_info_cache fcc; - -#if ZEND_MODULE_API_NO >= 20090626 - fci.size = sizeof(fci); - fci.function_table = EG(function_table); - fci.function_name = NULL; - fci.symbol_table = NULL; - fci.object_ptr = return_value; - fci.retval_ptr_ptr = &retval_ptr; - fci.param_count = num_args; - fci.params = params; - fci.no_separation = 1; - - fcc.initialized = 1; - fcc.function_handler = ce->constructor; - fcc.calling_scope = EG(scope); - fcc.called_scope = Z_OBJCE_P(return_value); - fcc.object_ptr = return_value; -#else - fci.size = sizeof(fci); - fci.function_table = EG(function_table); - fci.function_name = NULL; - fci.symbol_table = NULL; - fci.object_pp = &return_value; - fci.retval_ptr_ptr = &retval_ptr; - fci.param_count = num_args; - fci.params = params; - fci.no_separation = 1; - - fcc.initialized = 1; - fcc.function_handler = ce->constructor; - fcc.calling_scope = EG(scope); - fcc.object_pp = &return_value; -#endif - - if (zend_call_function(&fci, &fcc TSRMLS_CC) == FAILURE) - { - if (params) - { - efree(params); - } - if (retval_ptr) - { - zval_ptr_dtor(&retval_ptr); - } - - MSGPACK_WARNING( - "[msgpack] (%s) Invocation of %s's constructor failed", - __FUNCTION__, ce->name); - - return FAILURE; - } - if (retval_ptr) - { - zval_ptr_dtor(&retval_ptr); - } - if (params) - { - efree(params); - } - } - - switch (Z_TYPE_PP(value)) - { - case IS_ARRAY: - { - char *key; - uint key_len; - int key_type; - ulong key_index; - zval **data; - HashPosition pos; - HashTable *ht, *ret; - HashTable *var = NULL; - int num; - - ht = HASH_OF(*value); - ret = HASH_OF(return_value); - - num = zend_hash_num_elements(ht); - if (num <= 0) - { - zval_ptr_dtor(value); - break; - } - - /* string - php_only mode? */ - if (ht->nNumOfElements != ht->nNextFreeElement - || ht->nNumOfElements != ret->nNumOfElements) - { - HashTable *properties = NULL; - HashPosition prop_pos; - - ALLOC_HASHTABLE(var); - zend_hash_init(var, num, NULL, NULL, 0); - - zend_hash_internal_pointer_reset_ex(ht, &pos); - for (;; zend_hash_move_forward_ex(ht, &pos)) - { - key_type = zend_hash_get_current_key_ex( - ht, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&data, &pos) != SUCCESS) - { - continue; - } - - if (key_type == HASH_KEY_IS_STRING) - { - zval *val; - MSGPACK_CONVERT_COPY_ZVAL(val, data); - if (msgpack_convert_string_to_properties( - return_value, key, key_len, val, var) != SUCCESS) - { - zval_ptr_dtor(&val); - MSGPACK_WARNING( - "[msgpack] (%s) " - "illegal offset type, skip this decoding", - __FUNCTION__); - } - } - } - - /* index */ - properties = Z_OBJ_HT_P(return_value)->get_properties( - return_value TSRMLS_CC); - - if (HASH_OF(tpl)) - { - properties = HASH_OF(tpl); - } - zend_hash_internal_pointer_reset_ex(properties, &prop_pos); - - zend_hash_internal_pointer_reset_ex(ht, &pos); - for (;; zend_hash_move_forward_ex(ht, &pos)) - { - key_type = zend_hash_get_current_key_ex( - ht, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&data, &pos) != SUCCESS) - { - continue; - } - - switch (key_type) - { - case HASH_KEY_IS_LONG: - { - zval *val; - MSGPACK_CONVERT_COPY_ZVAL(val, data); - if (msgpack_convert_long_to_properties( - ret, &properties, &prop_pos, - key_index, val, var) != SUCCESS) - { - zval_ptr_dtor(&val); - MSGPACK_WARNING( - "[msgpack] (%s) " - "illegal offset type, skip this decoding", - __FUNCTION__); - } - break; - } - case HASH_KEY_IS_STRING: - break; - default: - MSGPACK_WARNING( - "[msgpack] (%s) key is not string nor array", - __FUNCTION__); - break; - } - } - - zend_hash_destroy(var); - FREE_HASHTABLE(var); - } - else - { - HashPosition valpos; - int (*convert_function)(zval *, zval *, zval **) = NULL; - zval **arydata, *aryval; - - /* index */ - zend_hash_internal_pointer_reset_ex(ret, &pos); - zend_hash_internal_pointer_reset_ex(ht, &valpos); - for (;; zend_hash_move_forward_ex(ret, &pos), - zend_hash_move_forward_ex(ht, &valpos)) - { - key_type = zend_hash_get_current_key_ex( - ret, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - - if (zend_hash_get_current_data_ex( - ret, (void *)&data, &pos) != SUCCESS) - { - continue; - } - - switch (Z_TYPE_PP(data)) - { - case IS_ARRAY: - convert_function = msgpack_convert_array; - break; - case IS_OBJECT: - //case IS_STRING: -- may have default values of - // class members, so it's not wise to allow - convert_function = msgpack_convert_object; - break; - default: - break; - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&arydata, &valpos) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) can't get data value by index", - __FUNCTION__); - return FAILURE; - } - - MSGPACK_CONVERT_COPY_ZVAL(aryval, arydata); - - if (convert_function) - { - zval *rv; - ALLOC_INIT_ZVAL(rv); - - if (convert_function(rv, *data, &aryval) != SUCCESS) - { - zval_ptr_dtor(&aryval); - MSGPACK_WARNING( - "[msgpack] (%s) " - "convert failure in convert_object", - __FUNCTION__); - return FAILURE; - } - - zend_symtable_update( - ret, key, key_len, &rv, sizeof(rv), NULL); - } - else - { - zend_symtable_update( - ret, key, key_len, &aryval, sizeof(aryval), NULL); - } - } - } - - zval_ptr_dtor(value); - break; - } - default: - { - HashTable *properties = NULL; - HashPosition prop_pos; - - properties = Z_OBJ_HT_P(return_value)->get_properties( - return_value TSRMLS_CC); - zend_hash_internal_pointer_reset_ex(properties, &prop_pos); - - if (msgpack_convert_long_to_properties( - HASH_OF(return_value), &properties, &prop_pos, - 0, *value, NULL) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) illegal offset type, skip this decoding", - __FUNCTION__); - } - break; - } - } - - return SUCCESS; -} - -int msgpack_convert_template(zval *return_value, zval *tpl, zval **value) -{ - TSRMLS_FETCH(); - - switch (Z_TYPE_P(tpl)) - { - case IS_ARRAY: - return msgpack_convert_array(return_value, tpl, value); - break; - case IS_STRING: - case IS_OBJECT: - return msgpack_convert_object(return_value, tpl, value); - break; - default: - MSGPACK_ERROR("[msgpack] (%s) Template type is unsupported", - __FUNCTION__); - return FAILURE; - } - - // shouldn't reach - return FAILURE; -} - diff --git a/php/msgpack_convert.h b/php/msgpack_convert.h deleted file mode 100644 index 93e045ee..00000000 --- a/php/msgpack_convert.h +++ /dev/null @@ -1,9 +0,0 @@ - -#ifndef MSGPACK_CONVERT_H -#define MSGPACK_CONVERT_H - -int msgpack_convert_object(zval *return_value, zval *object, zval **value); -int msgpack_convert_array(zval *return_value, zval *tpl, zval **value); -int msgpack_convert_template(zval *return_value, zval *tpl, zval **value); - -#endif diff --git a/php/msgpack_errors.h b/php/msgpack_errors.h deleted file mode 100644 index 2cbce201..00000000 --- a/php/msgpack_errors.h +++ /dev/null @@ -1,17 +0,0 @@ - -#ifndef MSGPACK_ERRORS_H -#define MSGPACK_ERRORS_H - -#define MSGPACK_NOTICE(...) \ - if (MSGPACK_G(error_display)) { \ - zend_error(E_NOTICE, __VA_ARGS__); \ - } - -#define MSGPACK_WARNING(...) \ - if (MSGPACK_G(error_display)) { \ - zend_error(E_WARNING, __VA_ARGS__); \ - } - -#define MSGPACK_ERROR(...) zend_error(E_ERROR, __VA_ARGS__) - -#endif diff --git a/php/msgpack_pack.c b/php/msgpack_pack.c deleted file mode 100644 index 728f2c8c..00000000 --- a/php/msgpack_pack.c +++ /dev/null @@ -1,604 +0,0 @@ - -#include "php.h" -#include "php_ini.h" -#include "ext/standard/php_smart_str.h" -#include "ext/standard/php_incomplete_class.h" -#include "ext/standard/php_var.h" - -#include "php_msgpack.h" -#include "msgpack_pack.h" -#include "msgpack_errors.h" - -#include "msgpack/pack_define.h" -#define msgpack_pack_user smart_str* -#define msgpack_pack_inline_func(name) \ - static inline void msgpack_pack ## name -#define msgpack_pack_inline_func_cint(name) \ - static inline void msgpack_pack ## name -#define msgpack_pack_append_buffer(user, buf, len) \ - smart_str_appendl(user, (const void*)buf, len) -#include "msgpack/pack_template.h" - -#if ZEND_MODULE_API_NO < 20090626 -# define Z_ISREF_P(pz) PZVAL_IS_REF(pz) -#endif - -inline static int msgpack_var_add( - HashTable *var_hash, zval *var, void *var_old TSRMLS_DC) -{ - ulong var_no; - char id[32], *p; - int len; - - if ((Z_TYPE_P(var) == IS_OBJECT) && Z_OBJ_HT_P(var)->get_class_entry) - { - p = smart_str_print_long( - id + sizeof(id) - 1, - (((size_t)Z_OBJCE_P(var) << 5) - | ((size_t)Z_OBJCE_P(var) >> (sizeof(long) * 8 - 5))) - + (long)Z_OBJ_HANDLE_P(var)); - len = id + sizeof(id) - 1 - p; - } - else if (Z_TYPE_P(var) == IS_ARRAY) - { - p = smart_str_print_long(id + sizeof(id) - 1, (long)var); - len = id + sizeof(id) - 1 - p; - } - else - { - return FAILURE; - } - - if (var_old && zend_hash_find(var_hash, p, len, var_old) == SUCCESS) - { - if (!Z_ISREF_P(var)) - { - var_no = -1; - zend_hash_next_index_insert( - var_hash, &var_no, sizeof(var_no), NULL); - } - return FAILURE; - } - - var_no = zend_hash_num_elements(var_hash) + 1; - - zend_hash_add(var_hash, p, len, &var_no, sizeof(var_no), NULL); - - return SUCCESS; -} - -inline static void msgpack_serialize_string( - smart_str *buf, char *str, size_t len) -{ - msgpack_pack_raw(buf, len); - msgpack_pack_raw_body(buf, str, len); -} - -inline static void msgpack_serialize_class( - smart_str *buf, zval *val, zval *retval_ptr, HashTable *var_hash, - char *class_name, zend_uint name_len, zend_bool incomplete_class TSRMLS_DC) -{ - int count; - HashTable *ht = HASH_OF(retval_ptr); - - count = zend_hash_num_elements(ht); - if (incomplete_class) - { - --count; - } - - if (count > 0) - { - char *key; - zval **data, **name; - ulong key_index; - HashPosition pos; - int n; - zval nval, *nvalp; - - msgpack_pack_map(buf, count + 1); - - msgpack_pack_nil(buf); - msgpack_serialize_string(buf, class_name, name_len); - - ZVAL_NULL(&nval); - nvalp = &nval; - - zend_hash_internal_pointer_reset_ex(ht, &pos); - - for (;; zend_hash_move_forward_ex(ht, &pos)) - { - n = zend_hash_get_current_key_ex( - ht, &key, NULL, &key_index, 0, &pos); - - if (n == HASH_KEY_NON_EXISTANT) - { - break; - } - if (incomplete_class && strcmp(key, MAGIC_MEMBER) == 0) - { - continue; - } - - zend_hash_get_current_data_ex(ht, (void **)&name, &pos); - - if (Z_TYPE_PP(name) != IS_STRING) - { - MSGPACK_NOTICE( - "[msgpack] (%s) __sleep should return an array only " - "containing the names of instance-variables to serialize", - __FUNCTION__); - continue; - } - - if (zend_hash_find( - Z_OBJPROP_P(val), Z_STRVAL_PP(name), - Z_STRLEN_PP(name) + 1, (void *)&data) == SUCCESS) - { - msgpack_serialize_string( - buf, Z_STRVAL_PP(name), Z_STRLEN_PP(name)); - msgpack_serialize_zval(buf, *data, var_hash TSRMLS_CC); - } - else - { - zend_class_entry *ce; - ce = zend_get_class_entry(val TSRMLS_CC); - if (ce) - { - char *prot_name, *priv_name; - int prop_name_length; - - do - { - zend_mangle_property_name( - &priv_name, &prop_name_length, ce->name, - ce->name_length, Z_STRVAL_PP(name), - Z_STRLEN_PP(name), - ce->type & ZEND_INTERNAL_CLASS); - if (zend_hash_find( - Z_OBJPROP_P(val), priv_name, - prop_name_length + 1, - (void *)&data) == SUCCESS) - { - msgpack_serialize_string( - buf, priv_name, prop_name_length); - - pefree(priv_name, - ce->type & ZEND_INTERNAL_CLASS); - - msgpack_serialize_zval( - buf, *data, var_hash TSRMLS_CC); - break; - } - - pefree(priv_name, - ce->type & ZEND_INTERNAL_CLASS); - - zend_mangle_property_name( - &prot_name, &prop_name_length, "*", 1, - Z_STRVAL_PP(name), Z_STRLEN_PP(name), - ce->type & ZEND_INTERNAL_CLASS); - - if (zend_hash_find( - Z_OBJPROP_P(val), prot_name, - prop_name_length + 1, - (void *)&data) == SUCCESS) - { - msgpack_serialize_string( - buf, prot_name, prop_name_length); - - pefree(prot_name, - ce->type & ZEND_INTERNAL_CLASS); - - msgpack_serialize_zval( - buf, *data, var_hash TSRMLS_CC); - break; - } - - pefree(prot_name, ce->type & ZEND_INTERNAL_CLASS); - - MSGPACK_NOTICE( - "[msgpack] (%s) \"%s\" returned as member " - "variable from __sleep() but does not exist", - __FUNCTION__, Z_STRVAL_PP(name)); - - msgpack_serialize_string( - buf, Z_STRVAL_PP(name), Z_STRLEN_PP(name)); - - msgpack_serialize_zval( - buf, nvalp, var_hash TSRMLS_CC); - } - while (0); - } - else - { - msgpack_serialize_string( - buf, Z_STRVAL_PP(name), Z_STRLEN_PP(name)); - - msgpack_serialize_zval(buf, nvalp, var_hash TSRMLS_CC); - } - } - } - } -} - -inline static void msgpack_serialize_array( - smart_str *buf, zval *val, HashTable *var_hash, zend_bool object, - char* class_name, zend_uint name_len, zend_bool incomplete_class TSRMLS_DC) -{ - HashTable *ht; - size_t n; - zend_bool hash = 1; - - if (object) - { - ht = Z_OBJPROP_P(val); - } - else - { - ht = HASH_OF(val); - } - - if (ht) - { - n = zend_hash_num_elements(ht); - } - else - { - n = 0; - } - - if (n > 0 && incomplete_class) - { - --n; - } - - if (object) - { - if (n == 0) - { - msgpack_pack_map(buf, n); - } - else - { - if (MSGPACK_G(php_only)) - { - if (Z_ISREF_P(val)) - { - msgpack_pack_map(buf, n + 2); - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_REFERENCE); - } - else - { - msgpack_pack_map(buf, n + 1); - } - - msgpack_pack_nil(buf); - - msgpack_serialize_string(buf, class_name, name_len); - } - else - { - msgpack_pack_array(buf, n); - hash = 0; - } - } - } - else if (n == 0) - { - hash = 0; - msgpack_pack_array(buf, n); - } - else if (Z_ISREF_P(val) && MSGPACK_G(php_only)) - { - msgpack_pack_map(buf, n + 1); - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_REFERENCE); - } - else if (ht->nNumOfElements == ht->nNextFreeElement) - { - hash = 0; - msgpack_pack_array(buf, n); - } - else - { - msgpack_pack_map(buf, n); - } - - if (n > 0) - { - if (object || hash) - { - char *key; - uint key_len; - int key_type; - ulong key_index; - zval **data; - HashPosition pos; - - zend_hash_internal_pointer_reset_ex(ht, &pos); - for (;; zend_hash_move_forward_ex(ht, &pos)) - { - key_type = zend_hash_get_current_key_ex( - ht, &key, &key_len, &key_index, 0, &pos); - - if (key_type == HASH_KEY_NON_EXISTANT) - { - break; - } - if (incomplete_class && strcmp(key, MAGIC_MEMBER) == 0) - { - continue; - } - - if (hash) - { - switch (key_type) - { - case HASH_KEY_IS_LONG: - msgpack_pack_long(buf, key_index); - break; - case HASH_KEY_IS_STRING: - msgpack_serialize_string(buf, key, key_len - 1); - break; - default: - msgpack_serialize_string(buf, "", sizeof("")); - MSGPACK_WARNING( - "[msgpack] (%s) key is not string nor array", - __FUNCTION__); - break; - } - } - - if (zend_hash_get_current_data_ex( - ht, (void *)&data, &pos) != SUCCESS || - !data || data == &val || - (Z_TYPE_PP(data) == IS_ARRAY && - Z_ARRVAL_PP(data)->nApplyCount > 1)) - { - msgpack_pack_nil(buf); - } - else - { - if (Z_TYPE_PP(data) == IS_ARRAY) - { - Z_ARRVAL_PP(data)->nApplyCount++; - } - - msgpack_serialize_zval(buf, *data, var_hash TSRMLS_CC); - - if (Z_TYPE_PP(data) == IS_ARRAY) - { - Z_ARRVAL_PP(data)->nApplyCount--; - } - } - } - } - else - { - zval **data; - uint i; - - for (i = 0; i < n; i++) - { - if (zend_hash_index_find(ht, i, (void *)&data) != SUCCESS || - !data || data == &val || - (Z_TYPE_PP(data) == IS_ARRAY && - Z_ARRVAL_PP(data)->nApplyCount > 1)) - { - msgpack_pack_nil(buf); - } - else - { - if (Z_TYPE_PP(data) == IS_ARRAY) - { - Z_ARRVAL_PP(data)->nApplyCount++; - } - - msgpack_serialize_zval(buf, *data, var_hash TSRMLS_CC); - - if (Z_TYPE_PP(data) == IS_ARRAY) - { - Z_ARRVAL_PP(data)->nApplyCount--; - } - } - } - } - } -} - -inline static void msgpack_serialize_object( - smart_str *buf, zval *val, HashTable *var_hash, - char* class_name, zend_uint name_len, zend_bool incomplete_class TSRMLS_DC) -{ - zval *retval_ptr = NULL; - zval fname; - int res; - zend_class_entry *ce = NULL; - - if (Z_OBJ_HT_P(val)->get_class_entry) - { - ce = Z_OBJCE_P(val); - } - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - if (ce && ce->serialize != NULL) - { - unsigned char *serialized_data = NULL; - zend_uint serialized_length; - - if (ce->serialize( - val, &serialized_data, &serialized_length, - (zend_serialize_data *)var_hash TSRMLS_CC) == SUCCESS && - !EG(exception)) - { - /* has custom handler */ - msgpack_pack_map(buf, 2); - - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_CUSTOM_OBJECT); - - msgpack_serialize_string(buf, (char *)ce->name, ce->name_length); - msgpack_pack_raw(buf, serialized_length); - msgpack_pack_raw_body(buf, serialized_data, serialized_length); - } - else - { - msgpack_pack_nil(buf); - } - - if (serialized_data) - { - efree(serialized_data); - } - - return; - } -#endif - - if (ce && ce != PHP_IC_ENTRY && - zend_hash_exists(&ce->function_table, "__sleep", sizeof("__sleep"))) - { - INIT_PZVAL(&fname); - ZVAL_STRINGL(&fname, "__sleep", sizeof("__sleep") - 1, 0); - res = call_user_function_ex(CG(function_table), &val, &fname, - &retval_ptr, 0, 0, 1, NULL TSRMLS_CC); - if (res == SUCCESS && !EG(exception)) - { - if (retval_ptr) - { - if (HASH_OF(retval_ptr)) - { - msgpack_serialize_class( - buf, val, retval_ptr, var_hash, - class_name, name_len, incomplete_class TSRMLS_CC); - } - else - { - MSGPACK_NOTICE( - "[msgpack] (%s) __sleep should return an array only " - "containing the names of instance-variables " - "to serialize", __FUNCTION__); - msgpack_pack_nil(buf); - } - zval_ptr_dtor(&retval_ptr); - } - return; - } - } - - if (retval_ptr) - { - zval_ptr_dtor(&retval_ptr); - } - - msgpack_serialize_array( - buf, val, var_hash, 1, - class_name, name_len, incomplete_class TSRMLS_CC); -} - -void msgpack_serialize_zval( - smart_str *buf, zval *val, HashTable *var_hash TSRMLS_DC) -{ - ulong *var_already; - - if (MSGPACK_G(php_only) && - var_hash && - msgpack_var_add( - var_hash, val, (void *)&var_already TSRMLS_CC) == FAILURE) - { - if (Z_ISREF_P(val)) - { - if (Z_TYPE_P(val) == IS_ARRAY) - { - msgpack_pack_map(buf, 2); - - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_RECURSIVE); - - msgpack_pack_long(buf, 0); - msgpack_pack_long(buf, *var_already); - - return; - } - else if (Z_TYPE_P(val) == IS_OBJECT) - { - msgpack_pack_map(buf, 2); - - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE); - - msgpack_pack_long(buf, 0); - msgpack_pack_long(buf, *var_already); - - return; - } - } - else if (Z_TYPE_P(val) == IS_OBJECT) - { - msgpack_pack_map(buf, 2); - - msgpack_pack_nil(buf); - msgpack_pack_long(buf, MSGPACK_SERIALIZE_TYPE_OBJECT); - - msgpack_pack_long(buf, 0); - msgpack_pack_long(buf, *var_already); - - return; - } - } - - switch (Z_TYPE_P(val)) - { - case IS_NULL: - msgpack_pack_nil(buf); - break; - case IS_BOOL: - if (Z_BVAL_P(val)) - { - msgpack_pack_true(buf); - } - else - { - msgpack_pack_false(buf); - } - break; - case IS_LONG: - msgpack_pack_long(buf, Z_LVAL_P(val)); - break; - case IS_DOUBLE: - { - double dbl = Z_DVAL_P(val); - msgpack_pack_double(buf, dbl); - } - break; - case IS_STRING: - msgpack_serialize_string( - buf, Z_STRVAL_P(val), Z_STRLEN_P(val)); - break; - case IS_ARRAY: - msgpack_serialize_array( - buf, val, var_hash, 0, NULL, 0, 0 TSRMLS_CC); - break; - case IS_OBJECT: - { - PHP_CLASS_ATTRIBUTES; - PHP_SET_CLASS_ATTRIBUTES(val); - - msgpack_serialize_object( - buf, val, var_hash, class_name, name_len, - incomplete_class TSRMLS_CC); - - PHP_CLEANUP_CLASS_ATTRIBUTES(); - } - break; - default: - MSGPACK_WARNING( - "[msgpack] (%s) type is unsupported, encoded as null", - __FUNCTION__); - msgpack_pack_nil(buf); - break; - } - return; -} diff --git a/php/msgpack_pack.h b/php/msgpack_pack.h deleted file mode 100644 index 99af6819..00000000 --- a/php/msgpack_pack.h +++ /dev/null @@ -1,26 +0,0 @@ - -#ifndef MSGPACK_PACK_H -#define MSGPACK_PACK_H - -#include "ext/standard/php_var.h" - -#if PHP_API_VERSION < 20100412 -#define msgpack_serialize_data_t HashTable -#else -typedef HashTable* msgpack_serialize_data_t; -#endif - -enum msgpack_serialize_type -{ - MSGPACK_SERIALIZE_TYPE_NONE = 0, - MSGPACK_SERIALIZE_TYPE_REFERENCE = 1, - MSGPACK_SERIALIZE_TYPE_RECURSIVE, - MSGPACK_SERIALIZE_TYPE_CUSTOM_OBJECT, - MSGPACK_SERIALIZE_TYPE_OBJECT, - MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE, -}; - -void msgpack_serialize_zval( - smart_str *buf, zval *val, HashTable *var_hash TSRMLS_DC); - -#endif diff --git a/php/msgpack_unpack.c b/php/msgpack_unpack.c deleted file mode 100644 index 44a33f06..00000000 --- a/php/msgpack_unpack.c +++ /dev/null @@ -1,760 +0,0 @@ - -#include "php.h" -#include "php_ini.h" -#include "ext/standard/php_incomplete_class.h" - -#include "php_msgpack.h" -#include "msgpack_pack.h" -#include "msgpack_unpack.h" -#include "msgpack_errors.h" - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION < 3) -# define Z_ADDREF_PP(ppz) ZVAL_ADDREF(*(ppz)) -# define Z_SET_ISREF_PP(ppz) (*(ppz))->is_ref = 1 -# define Z_UNSET_ISREF_PP(ppz) (*(ppz))->is_ref = 0 -#endif - -#define VAR_ENTRIES_MAX 1024 - -typedef struct -{ - zval *data[VAR_ENTRIES_MAX]; - long used_slots; - void *next; -} var_entries; - -#define MSGPACK_UNSERIALIZE_ALLOC_STACK(_unpack) \ - if (_unpack->deps <= 0) { \ - *obj = _unpack->retval; \ - msgpack_stack_push(_unpack->var_hash, obj, 0); \ - } else { \ - ALLOC_INIT_ZVAL(*obj); \ - msgpack_stack_push(_unpack->var_hash, obj, 1); \ - } - -#define MSGPACK_UNSERIALIZE_ALLOC_VALUE(_unpack) \ - if (_unpack->deps <= 0) { \ - *obj = _unpack->retval; \ - msgpack_var_push(_unpack->var_hash, obj); \ - } else { \ - ALLOC_INIT_ZVAL(*obj); \ - msgpack_var_push(_unpack->var_hash, obj); \ - } - -#define MSGPACK_UNSERIALIZE_FINISH_ITEM(_unpack, _count) \ - msgpack_stack_pop(_unpack->var_hash, _count); \ - _unpack->stack[_unpack->deps-1]--; \ - if (_unpack->stack[_unpack->deps-1] == 0) { \ - _unpack->deps--; \ - } - -#define MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(_unpack, _key, _val) \ - zval_ptr_dtor(&_key); \ - zval_ptr_dtor(&_val); \ - MSGPACK_UNSERIALIZE_FINISH_ITEM(_unpack, 2); - -inline static void msgpack_var_push( - msgpack_unserialize_data_t *var_hashx, zval **rval) -{ - var_entries *var_hash, *prev = NULL; - - if (!var_hashx) - { - return; - } - - var_hash = var_hashx->first; - - while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) - { - prev = var_hash; - var_hash = var_hash->next; - } - - if (!var_hash) - { - var_hash = emalloc(sizeof(var_entries)); - var_hash->used_slots = 0; - var_hash->next = 0; - - if (!var_hashx->first) - { - var_hashx->first = var_hash; - } - else - { - prev->next = var_hash; - } - } - - var_hash->data[var_hash->used_slots++] = *rval; -} - -inline static int msgpack_var_access( - msgpack_unserialize_data_t *var_hashx, long id, zval ***store) -{ - var_entries *var_hash = var_hashx->first; - - while (id >= VAR_ENTRIES_MAX && - var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) - { - var_hash = var_hash->next; - id -= VAR_ENTRIES_MAX; - } - - if (!var_hash) - { - return !SUCCESS; - } - - if (id < 0 || id >= var_hash->used_slots) - { - return !SUCCESS; - } - - *store = &var_hash->data[id]; - - return SUCCESS; -} - -inline static void msgpack_stack_push( - msgpack_unserialize_data_t *var_hashx, zval **rval, zend_bool save) -{ - var_entries *var_hash, *prev = NULL; - - if (!var_hashx) - { - return; - } - - var_hash = var_hashx->first_dtor; - - while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) - { - prev = var_hash; - var_hash = var_hash->next; - } - - if (!var_hash) - { - var_hash = emalloc(sizeof(var_entries)); - var_hash->used_slots = 0; - var_hash->next = 0; - - if (!var_hashx->first_dtor) - { - var_hashx->first_dtor = var_hash; - } - else - { - prev->next = var_hash; - } - } - - if (save) - { - var_hash->data[var_hash->used_slots++] = *rval; - } - else - { - var_hash->data[var_hash->used_slots++] = NULL; - } -} - -inline static void msgpack_stack_pop( - msgpack_unserialize_data_t *var_hashx, long count) -{ - long i; - var_entries *var_hash = var_hashx->first_dtor; - - while (var_hash && var_hash->used_slots == VAR_ENTRIES_MAX) - { - var_hash = var_hash->next; - } - - if (!var_hash || count <= 0) - { - return; - } - - for (i = count; i > 0; i--) - { - var_hash->used_slots--; - if (var_hash->used_slots < 0) - { - var_hash->used_slots = 0; - var_hash->data[var_hash->used_slots] = NULL; - break; - } - else - { - var_hash->data[var_hash->used_slots] = NULL; - } - } -} - -inline static zend_class_entry* msgpack_unserialize_class( - zval **container, char *class_name, size_t name_len) -{ - zend_class_entry *ce, **pce; - zend_bool incomplete_class = 0; - zval *user_func, *retval_ptr, **args[1], *arg_func_name; - TSRMLS_FETCH(); - - do - { - /* Try to find class directly */ - if (zend_lookup_class(class_name, name_len, &pce TSRMLS_CC) == SUCCESS) - { - ce = *pce; - break; - } - - /* Check for unserialize callback */ - if ((PG(unserialize_callback_func) == NULL) || - (PG(unserialize_callback_func)[0] == '\0')) - { - incomplete_class = 1; - ce = PHP_IC_ENTRY; - break; - } - - /* Call unserialize callback */ - ALLOC_INIT_ZVAL(user_func); - ZVAL_STRING(user_func, PG(unserialize_callback_func), 1); - args[0] = &arg_func_name; - ALLOC_INIT_ZVAL(arg_func_name); - ZVAL_STRING(arg_func_name, class_name, 1); - if (call_user_function_ex( - CG(function_table), NULL, user_func, &retval_ptr, - 1, args, 0, NULL TSRMLS_CC) != SUCCESS) - { - MSGPACK_WARNING("[msgpack] (%s) defined (%s) but not found", - __FUNCTION__, class_name); - - incomplete_class = 1; - ce = PHP_IC_ENTRY; - zval_ptr_dtor(&user_func); - zval_ptr_dtor(&arg_func_name); - break; - } - if (retval_ptr) - { - zval_ptr_dtor(&retval_ptr); - } - - /* The callback function may have defined the class */ - if (zend_lookup_class(class_name, name_len, &pce TSRMLS_CC) == SUCCESS) - { - ce = *pce; - } - else - { - MSGPACK_WARNING("[msgpack] (%s) Function %s() hasn't defined " - "the class it was called for", - __FUNCTION__, class_name); - - incomplete_class = 1; - ce = PHP_IC_ENTRY; - } - - zval_ptr_dtor(&user_func); - zval_ptr_dtor(&arg_func_name); - } - while(0); - - if (EG(exception)) - { - MSGPACK_WARNING("[msgpack] (%s) Exception error", __FUNCTION__); - return NULL; - } - - object_init_ex(*container, ce); - - /* store incomplete class name */ - if (incomplete_class) - { - php_store_class_name(*container, class_name, name_len); - } - - return ce; -} - -void msgpack_unserialize_var_init(msgpack_unserialize_data_t *var_hashx) -{ - var_hashx->first = 0; - var_hashx->first_dtor = 0; -} - -void msgpack_unserialize_var_destroy( - msgpack_unserialize_data_t *var_hashx, zend_bool err) -{ - void *next; - long i; - var_entries *var_hash = var_hashx->first; - - while (var_hash) - { - if (err) - { - for (i = var_hash->used_slots - 1; i > 0; i--) - { - if (var_hash->data[i]) - { - zval_ptr_dtor(&var_hash->data[i]); - } - } - } - - next = var_hash->next; - efree(var_hash); - var_hash = next; - } - - var_hash = var_hashx->first_dtor; - - while (var_hash) - { - for (i = var_hash->used_slots - 1; i >= 0; i--) - { - if (var_hash->data[i]) - { - zval_ptr_dtor(&var_hash->data[i]); - } - } - - next = var_hash->next; - efree(var_hash); - var_hash = next; - } -} - -void msgpack_unserialize_init(msgpack_unserialize_data *unpack) -{ - unpack->deps = 0; - unpack->type = MSGPACK_SERIALIZE_TYPE_NONE; -} - -int msgpack_unserialize_uint8( - msgpack_unserialize_data *unpack, uint8_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_uint16( - msgpack_unserialize_data *unpack, uint16_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_uint32( - msgpack_unserialize_data *unpack, uint32_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_uint64( - msgpack_unserialize_data *unpack, uint64_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_int8( - msgpack_unserialize_data *unpack, int8_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_int16( - msgpack_unserialize_data *unpack, int16_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_int32( - msgpack_unserialize_data *unpack, int32_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_int64( - msgpack_unserialize_data *unpack, int64_t data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_LONG(*obj, data); - - return 0; -} - -int msgpack_unserialize_float( - msgpack_unserialize_data *unpack, float data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_DOUBLE(*obj, data); - - return 0; -} - -int msgpack_unserialize_double( - msgpack_unserialize_data *unpack, double data, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_DOUBLE(*obj, data); - - return 0; -} - -int msgpack_unserialize_nil(msgpack_unserialize_data *unpack, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_NULL(*obj); - - return 0; -} - -int msgpack_unserialize_true(msgpack_unserialize_data *unpack, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_BOOL(*obj, 1); - - return 0; -} - -int msgpack_unserialize_false(msgpack_unserialize_data *unpack, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - ZVAL_BOOL(*obj, 0); - - return 0; -} - -int msgpack_unserialize_raw( - msgpack_unserialize_data *unpack, const char* base, - const char* data, unsigned int len, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_STACK(unpack); - - if (len == 0) - { - ZVAL_STRINGL(*obj, "", 0, 1); - } - else - { - ZVAL_STRINGL(*obj, data, len, 1); - } - - return 0; -} - -int msgpack_unserialize_array( - msgpack_unserialize_data *unpack, unsigned int count, zval **obj) -{ - MSGPACK_UNSERIALIZE_ALLOC_VALUE(unpack); - - array_init(*obj); - - unpack->stack[unpack->deps++] = count; - - return 0; -} - -int msgpack_unserialize_array_item( - msgpack_unserialize_data *unpack, zval **container, zval *obj) -{ - add_next_index_zval(*container, obj); - - MSGPACK_UNSERIALIZE_FINISH_ITEM(unpack, 1); - - return 0; -} - -int msgpack_unserialize_map( - msgpack_unserialize_data *unpack, unsigned int count, zval **obj) -{ - TSRMLS_FETCH(); - MSGPACK_UNSERIALIZE_ALLOC_VALUE(unpack); - - unpack->stack[unpack->deps++] = count; - - unpack->type = MSGPACK_SERIALIZE_TYPE_NONE; - - if (count == 0) - { - if (MSGPACK_G(php_only)) - { - object_init(*obj); - } - else - { - array_init(*obj); - } - } - - return 0; -} - -int msgpack_unserialize_map_item( - msgpack_unserialize_data *unpack, zval **container, zval *key, zval *val) -{ - long deps; - TSRMLS_FETCH(); - - if (MSGPACK_G(php_only)) - { - zend_class_entry *ce; - if (Z_TYPE_P(key) == IS_NULL) - { - unpack->type = MSGPACK_SERIALIZE_TYPE_NONE; - - if (Z_TYPE_P(val) == IS_LONG) - { - switch (Z_LVAL_P(val)) - { - case MSGPACK_SERIALIZE_TYPE_REFERENCE: - Z_SET_ISREF_PP(container); - break; - case MSGPACK_SERIALIZE_TYPE_RECURSIVE: - unpack->type = MSGPACK_SERIALIZE_TYPE_RECURSIVE; - break; - case MSGPACK_SERIALIZE_TYPE_CUSTOM_OBJECT: - unpack->type = MSGPACK_SERIALIZE_TYPE_CUSTOM_OBJECT; - break; - case MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE: - unpack->type = MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE; - break; - case MSGPACK_SERIALIZE_TYPE_OBJECT: - unpack->type = MSGPACK_SERIALIZE_TYPE_OBJECT; - break; - default: - break; - } - } - else if (Z_TYPE_P(val) == IS_STRING) - { - ce = msgpack_unserialize_class( - container, Z_STRVAL_P(val), Z_STRLEN_P(val)); - - if (ce == NULL) - { - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - } - - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - else - { - switch (unpack->type) - { - case MSGPACK_SERIALIZE_TYPE_CUSTOM_OBJECT: - unpack->type = MSGPACK_SERIALIZE_TYPE_NONE; - - ce = msgpack_unserialize_class( - container, Z_STRVAL_P(key), Z_STRLEN_P(key)); - if (ce == NULL) - { - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - -#if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0) - /* implementing Serializable */ - if (ce->unserialize == NULL) - { - MSGPACK_WARNING( - "[msgpack] (%s) Class %s has no unserializer", - __FUNCTION__, ce->name); - - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - - ce->unserialize( - container, ce, - (const unsigned char *)Z_STRVAL_P(val), - Z_STRLEN_P(val) + 1, NULL TSRMLS_CC); -#endif - - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - case MSGPACK_SERIALIZE_TYPE_RECURSIVE: - case MSGPACK_SERIALIZE_TYPE_OBJECT: - case MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE: - { - zval **rval; - int type = unpack->type; - - unpack->type = MSGPACK_SERIALIZE_TYPE_NONE; - if (msgpack_var_access( - unpack->var_hash, - Z_LVAL_P(val) - 1, &rval) != SUCCESS) - { - MSGPACK_WARNING( - "[msgpack] (%s) Invalid references value: %ld", - __FUNCTION__, Z_LVAL_P(val) - 1); - - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - - if (container != NULL) - { - zval_ptr_dtor(container); - } - - *container = *rval; - - Z_ADDREF_PP(container); - - if (type == MSGPACK_SERIALIZE_TYPE_OBJECT) - { - Z_UNSET_ISREF_PP(container); - } - else if (type == MSGPACK_SERIALIZE_TYPE_OBJECT_REFERENCE) - { - Z_SET_ISREF_PP(container); - } - - MSGPACK_UNSERIALIZE_FINISH_MAP_ITEM(unpack, key, val); - - return 0; - } - } - } - } - - if (Z_TYPE_PP(container) != IS_ARRAY && Z_TYPE_PP(container) != IS_OBJECT) - { - array_init(*container); - } - - switch (Z_TYPE_P(key)) - { - case IS_LONG: - if (zend_hash_index_update( - HASH_OF(*container), Z_LVAL_P(key), &val, - sizeof(val), NULL) == FAILURE) - { - zval_ptr_dtor(&val); - MSGPACK_WARNING( - "[msgpack] (%s) illegal offset type, skip this decoding", - __FUNCTION__); - } - zval_ptr_dtor(&key); - break; - case IS_STRING: - if (zend_symtable_update( - HASH_OF(*container), Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, - &val, sizeof(val), NULL) == FAILURE) - { - zval_ptr_dtor(&val); - MSGPACK_WARNING( - "[msgpack] (%s) illegal offset type, skip this decoding", - __FUNCTION__); - } - zval_ptr_dtor(&key); - break; - default: - MSGPACK_WARNING("[msgpack] (%s) illegal key type", __FUNCTION__); - - if (MSGPACK_G(illegal_key_insert)) - { - if (zend_hash_next_index_insert( - HASH_OF(*container), &key, sizeof(key), NULL) == FAILURE) - { - zval_ptr_dtor(&val); - } - if (zend_hash_next_index_insert( - HASH_OF(*container), &val, sizeof(val), NULL) == FAILURE) - { - zval_ptr_dtor(&val); - } - } - else - { - convert_to_string(key); - if (zend_symtable_update( - HASH_OF(*container), - Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, - &val, sizeof(val), NULL) == FAILURE) - { - zval_ptr_dtor(&val); - } - zval_ptr_dtor(&key); - } - break; - } - - msgpack_stack_pop(unpack->var_hash, 2); - - deps = unpack->deps - 1; - unpack->stack[deps]--; - if (unpack->stack[deps] == 0) - { - unpack->deps--; - - /* wakeup */ - if (MSGPACK_G(php_only) && - Z_TYPE_PP(container) == IS_OBJECT && - Z_OBJCE_PP(container) != PHP_IC_ENTRY && - zend_hash_exists( - &Z_OBJCE_PP(container)->function_table, - "__wakeup", sizeof("__wakeup"))) - { - zval f, *h = NULL; - - INIT_PZVAL(&f); - ZVAL_STRINGL(&f, "__wakeup", sizeof("__wakeup") - 1, 0); - call_user_function_ex( - CG(function_table), container, &f, &h, 0, 0, 1, NULL TSRMLS_CC); - if (h) - { - zval_ptr_dtor(&h); - } - } - } - - return 0; -} diff --git a/php/msgpack_unpack.h b/php/msgpack_unpack.h deleted file mode 100644 index 2ffa7904..00000000 --- a/php/msgpack_unpack.h +++ /dev/null @@ -1,132 +0,0 @@ - -#ifndef MSGPACK_UNPACK_H -#define MSGPACK_UNPACK_H - -#include "ext/standard/php_var.h" - -#define MSGPACK_EMBED_STACK_SIZE 1024 - -#include "msgpack/unpack_define.h" - -typedef enum -{ - MSGPACK_UNPACK_SUCCESS = 2, - MSGPACK_UNPACK_EXTRA_BYTES = 1, - MSGPACK_UNPACK_CONTINUE = 0, - MSGPACK_UNPACK_PARSE_ERROR = -1, -} msgpack_unpack_return; - -typedef struct php_unserialize_data msgpack_unserialize_data_t; - -typedef struct { - zval *retval; - long deps; - msgpack_unserialize_data_t *var_hash; - long stack[MSGPACK_EMBED_STACK_SIZE]; - int type; -} msgpack_unserialize_data; - -void msgpack_unserialize_var_init(msgpack_unserialize_data_t *var_hashx); -void msgpack_unserialize_var_destroy( - msgpack_unserialize_data_t *var_hashx, zend_bool err); - -void msgpack_unserialize_init(msgpack_unserialize_data *unpack); - -int msgpack_unserialize_uint8( - msgpack_unserialize_data *unpack, uint8_t data, zval **obj); -int msgpack_unserialize_uint16( - msgpack_unserialize_data *unpack, uint16_t data, zval **obj); -int msgpack_unserialize_uint32( - msgpack_unserialize_data *unpack, uint32_t data, zval **obj); -int msgpack_unserialize_uint64( - msgpack_unserialize_data *unpack, uint64_t data, zval **obj); -int msgpack_unserialize_int8( - msgpack_unserialize_data *unpack, int8_t data, zval **obj); -int msgpack_unserialize_int16( - msgpack_unserialize_data *unpack, int16_t data, zval **obj); -int msgpack_unserialize_int32( - msgpack_unserialize_data *unpack, int32_t data, zval **obj); -int msgpack_unserialize_int64( - msgpack_unserialize_data *unpack, int64_t data, zval **obj); -int msgpack_unserialize_float( - msgpack_unserialize_data *unpack, float data, zval **obj); -int msgpack_unserialize_double( - msgpack_unserialize_data *unpack, double data, zval **obj); -int msgpack_unserialize_nil(msgpack_unserialize_data *unpack, zval **obj); -int msgpack_unserialize_true(msgpack_unserialize_data *unpack, zval **obj); -int msgpack_unserialize_false(msgpack_unserialize_data *unpack, zval **obj); -int msgpack_unserialize_raw( - msgpack_unserialize_data *unpack, const char* base, const char* data, - unsigned int len, zval **obj); -int msgpack_unserialize_array( - msgpack_unserialize_data *unpack, unsigned int count, zval **obj); -int msgpack_unserialize_array_item( - msgpack_unserialize_data *unpack, zval **container, zval *obj); -int msgpack_unserialize_map( - msgpack_unserialize_data *unpack, unsigned int count, zval **obj); -int msgpack_unserialize_map_item( - msgpack_unserialize_data *unpack, zval **container, zval *key, zval *val); - -/* template functions */ -#define msgpack_unpack_struct(name) struct template ## name -#define msgpack_unpack_func(ret, name) ret template ## name -#define msgpack_unpack_callback(name) template_callback ## name - -#define msgpack_unpack_object zval* -#define unpack_user msgpack_unserialize_data -#define msgpack_unpack_user msgpack_unserialize_data - -struct template_context; -typedef struct template_context msgpack_unpack_t; - -static void template_init(msgpack_unpack_t* unpack); -static msgpack_unpack_object template_data(msgpack_unpack_t* unpack); -static int template_execute( - msgpack_unpack_t* unpack, const char* data, size_t len, size_t* off); - -static inline msgpack_unpack_object template_callback_root(unpack_user* user) -{ - msgpack_unserialize_init(user); - return NULL; -} - -#define template_callback_uint8(user, data, obj) \ - msgpack_unserialize_uint8(user, data, obj) -#define template_callback_uint16(user, data, obj) \ - msgpack_unserialize_uint16(user, data, obj) -#define template_callback_uint32(user, data, obj) \ - msgpack_unserialize_uint32(user, data, obj) -#define template_callback_uint64(user, data, obj) \ - msgpack_unserialize_uint64(user, data, obj) -#define template_callback_int8(user, data, obj) \ - msgpack_unserialize_int8(user, data, obj) -#define template_callback_int16(user, data, obj) \ - msgpack_unserialize_int16(user, data, obj) -#define template_callback_int32(user, data, obj) \ - msgpack_unserialize_int32(user, data, obj) -#define template_callback_int64(user, data, obj) \ - msgpack_unserialize_int64(user, data, obj) -#define template_callback_float(user, data, obj) \ - msgpack_unserialize_float(user, data, obj) -#define template_callback_double(user, data, obj) \ - msgpack_unserialize_double(user, data, obj) -#define template_callback_nil(user, obj) \ - msgpack_unserialize_nil(user, obj) -#define template_callback_true(user, obj) \ - msgpack_unserialize_true(user, obj) -#define template_callback_false(user, obj) \ - msgpack_unserialize_false(user, obj) -#define template_callback_raw(user, base, data, len, obj) \ - msgpack_unserialize_raw(user, base, data, len, obj) -#define template_callback_array(user, count, obj) \ - msgpack_unserialize_array(user, count, obj) -#define template_callback_array_item(user, container, obj) \ - msgpack_unserialize_array_item(user, container, obj) -#define template_callback_map(user, count, obj) \ - msgpack_unserialize_map(user, count, obj) -#define template_callback_map_item(user, container, key, val) \ - msgpack_unserialize_map_item(user, container, key, val) - -#include "msgpack/unpack_template.h" - -#endif diff --git a/php/package.xml b/php/package.xml deleted file mode 100644 index 59c7606e..00000000 --- a/php/package.xml +++ /dev/null @@ -1,255 +0,0 @@ - - - msgpack - pecl.php.net - PHP extension for interfacing with MessagePack - This extension provide API for communicating with MessagePack serialization. - - Advect - advect - advect@gmail.com - yes - - 2011-07-27 - - - 0.5.0 - 0.5.0 - - - beta - beta - - New BSD - Initial release. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 5.0.0 - - - 1.4.3 - - - - msgpack - - diff --git a/php/php-msgpack.spec b/php/php-msgpack.spec deleted file mode 100644 index 2c04f0b1..00000000 --- a/php/php-msgpack.spec +++ /dev/null @@ -1,58 +0,0 @@ -%define php_apiver %((echo 0; php -i 2>/dev/null | sed -n 's/^PHP API => //p') | tail -1) -%{!?php_extdir: %{expand: %%define php_extdir %(php-config --extension-dir)}} - -Summary: PHP extension for interfacing with MessagePack -Name: php-msgpack -Version: 0.5.0 -Release: 1%{?dist} -Source: php-msgpack-%{version}.tar.gz -License: New BSD License -Group: Development/Libraries -Packager: advect -Provides: php-pecl-msgpack -BuildRoot: %{_tmppath}/%{name}-%{version}-root -BuildRequires: php-devel -%if 0%{?php_zend_api} -Requires: php(zend-abi) = %{php_zend_api} -Requires: php(api) = %{php_core_api} -%else -Requires: php-api = %{php_apiver} -%endif - -%description -PHP extension for interfacing with MessagePack. - -%prep -%setup -q -n php-msgpack - -%build -phpize -%configure -%{__make} - -%install -%makeinstall INSTALL_ROOT=%{buildroot} - -%{__install} -d %{buildroot}%{_sysconfdir}/php.d -%{__cat} > %{buildroot}%{_sysconfdir}/php.d/msgpack.ini <= 4 -# define PHP_MSGPACK_API __attribute__ ((visibility("default"))) -#else -# define PHP_MSGPACK_API -#endif - -#ifdef ZTS -#include "TSRM.h" -#endif - -ZEND_BEGIN_MODULE_GLOBALS(msgpack) - zend_bool error_display; - zend_bool php_only; - zend_bool illegal_key_insert; -ZEND_END_MODULE_GLOBALS(msgpack) - -ZEND_EXTERN_MODULE_GLOBALS(msgpack) - -#ifdef ZTS -#define MSGPACK_G(v) TSRMG(msgpack_globals_id, zend_msgpack_globals *, v) -#else -#define MSGPACK_G(v) (msgpack_globals.v) -#endif - -PHP_MSGPACK_API void php_msgpack_serialize( - smart_str *buf, zval *val TSRMLS_DC); -PHP_MSGPACK_API void php_msgpack_unserialize( - zval *return_value, char *str, size_t str_len TSRMLS_DC); - -#endif /* PHP_MSGPACK_H */ diff --git a/php/test_normal.php b/php/test_normal.php deleted file mode 100644 index ee348c29..00000000 --- a/php/test_normal.php +++ /dev/null @@ -1,19 +0,0 @@ -1), array("takei"=>"hide"), 3); - //$data = array("more"=>10, "test", null); - //$data = array(); - $data = array(0=>1,1=>2,2=>3); - var_dump($data); - - // serialize - $msg = msgpack_pack($data); - - // hexadecimal - $str = unpack('H*', $msg); - var_dump("0x".$str[1]); - - // deserialize - $ret = msgpack_unpack($msg); - var_dump($ret); -?> - diff --git a/php/test_streaming.php b/php/test_streaming.php deleted file mode 100644 index f2f470e3..00000000 --- a/php/test_streaming.php +++ /dev/null @@ -1,31 +0,0 @@ -execute($buffer, $nread)){ - $msg = $unpacker->data(); - var_dump($msg); - - $unpacker->reset(); - $buffer = substr($buffer, $nread); - $nread = 0; - - if(!empty($buffer)){ - continue; - } - } - break; - } - } -?> - diff --git a/php/tests/001.phpt b/php/tests/001.phpt deleted file mode 100644 index 840ae461..00000000 --- a/php/tests/001.phpt +++ /dev/null @@ -1,10 +0,0 @@ ---TEST-- -Check for msgpack presence ---SKIPIF-- - ---FILE-- - ---EXPECT-- -msgpack extension is available diff --git a/php/tests/002.phpt b/php/tests/002.phpt deleted file mode 100644 index 75b9488e..00000000 --- a/php/tests/002.phpt +++ /dev/null @@ -1,26 +0,0 @@ ---TEST-- -Check for null serialisation ---SKIPIF-- ---FILE-- - ---EXPECT-- -null -c0 -NULL -OK diff --git a/php/tests/003.phpt b/php/tests/003.phpt deleted file mode 100644 index 8c85f904..00000000 --- a/php/tests/003.phpt +++ /dev/null @@ -1,31 +0,0 @@ ---TEST-- -Check for bool serialisation ---SKIPIF-- ---FILE-- - ---EXPECT-- -bool true -c3 -bool(true) -OK -bool false -c2 -bool(false) -OK diff --git a/php/tests/004.phpt b/php/tests/004.phpt deleted file mode 100644 index 8c352eca..00000000 --- a/php/tests/004.phpt +++ /dev/null @@ -1,56 +0,0 @@ ---TEST-- -Check for integer serialisation ---SKIPIF-- ---FILE-- - ---EXPECT-- -zero: 0 -00 -int(0) -OK -small: 1 -01 -int(1) -OK -small: -1 -ff -int(-1) -OK -medium: 1000 -cd03e8 -int(1000) -OK -medium: -1000 -d1fc18 -int(-1000) -OK -large: 100000 -ce000186a0 -int(100000) -OK -large: -100000 -d2fffe7960 -int(-100000) -OK diff --git a/php/tests/005.phpt b/php/tests/005.phpt deleted file mode 100644 index 2156ffad..00000000 --- a/php/tests/005.phpt +++ /dev/null @@ -1,26 +0,0 @@ ---TEST-- -Check for double serialisation ---SKIPIF-- ---FILE-- - ---EXPECT-- -double: 123.456 -cb405edd2f1a9fbe77 -float(123.456) -OK diff --git a/php/tests/006.phpt b/php/tests/006.phpt deleted file mode 100644 index 68323553..00000000 --- a/php/tests/006.phpt +++ /dev/null @@ -1,31 +0,0 @@ ---TEST-- -Check for simple string serialization ---SKIPIF-- ---FILE-- - ---EXPECT-- -empty: "" -a0 -string(0) "" -OK -string: "foobar" -a6666f6f626172 -string(6) "foobar" -OK diff --git a/php/tests/007.phpt b/php/tests/007.phpt deleted file mode 100644 index 2bafc7b4..00000000 --- a/php/tests/007.phpt +++ /dev/null @@ -1,72 +0,0 @@ ---TEST-- -Check for simple array serialization ---SKIPIF-- ---FILE-- - ---EXPECT-- -empty array: -90 -array(0) { -} -OK -array(1, 2, 3) -93010203 -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(array(1, 2, 3), arr... -93930102039304050693070809 -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK diff --git a/php/tests/008.phpt b/php/tests/008.phpt deleted file mode 100644 index 382a1d11..00000000 --- a/php/tests/008.phpt +++ /dev/null @@ -1,61 +0,0 @@ ---TEST-- -Check for array+string serialization ---SKIPIF-- ---FILE-- - 1, "two" => 2))', array("one" => 1, "two" => 2)); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek")); -test('array("" => "empty")', array("" => "empty")); -?> ---EXPECT-- -array("foo", "foo", "foo") -93a3666f6fa3666f6fa3666f6f -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array("one" => 1, "two" => 2)) -82a36f6e6501a374776f02 -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array("kek" => "lol", "lol" => "kek") -82a36b656ba36c6f6ca36c6f6ca36b656b -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array("" => "empty") -81a0a5656d707479 -array(1) { - [""]=> - string(5) "empty" -} -OK diff --git a/php/tests/009.phpt b/php/tests/009.phpt deleted file mode 100644 index da72a7b9..00000000 --- a/php/tests/009.phpt +++ /dev/null @@ -1,103 +0,0 @@ ---TEST-- -Check for reference serialization ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- - - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(&$a, &$a) -9282c00100a3666f6f82c0020002 -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -cyclic -9182c0010082c0010082c0020002 -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} diff --git a/php/tests/009b.phpt b/php/tests/009b.phpt deleted file mode 100644 index 1bc195f8..00000000 --- a/php/tests/009b.phpt +++ /dev/null @@ -1,121 +0,0 @@ ---TEST-- -Check for reference serialization ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} ---FILE-- - - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(&$a, &$a) -9282c00100a3666f6f82c0020002 -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -cyclic -9182c0010082c0010082c0020002 -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/010.phpt b/php/tests/010.phpt deleted file mode 100644 index 9eb77a61..00000000 --- a/php/tests/010.phpt +++ /dev/null @@ -1,49 +0,0 @@ ---TEST-- -Array test ---SKIPIF-- ---FILE-- - array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) -); - -test('array', $a, false); -?> ---EXPECT-- -array -82a16182a162a163a164a165a16681a167a168 -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK diff --git a/php/tests/012.phpt b/php/tests/012.phpt deleted file mode 100644 index f6bf5a8e..00000000 --- a/php/tests/012.phpt +++ /dev/null @@ -1,52 +0,0 @@ ---TEST-- -Object test ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - } -} - -$o = new Obj(1, 2, 3); - - -test('object', $o, false); -?> ---EXPECTF-- -object -84c0a34f626aa16101a4002a006202a6004f626a006303 -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK diff --git a/php/tests/012c.phpt b/php/tests/012c.phpt deleted file mode 100644 index 9ab55318..00000000 --- a/php/tests/012c.phpt +++ /dev/null @@ -1,52 +0,0 @@ ---TEST-- -Object test ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - } -} - -$o = new Obj(1, 2, 3); - - -test('object', $o, false); -?> ---EXPECTF-- -object -84c0a34f626aa16101a4002a006202a6004f626a006303 -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK diff --git a/php/tests/013.phpt b/php/tests/013.phpt deleted file mode 100644 index caf3434e..00000000 --- a/php/tests/013.phpt +++ /dev/null @@ -1,54 +0,0 @@ ---TEST-- -Object-Array test ---SKIPIF-- ---FILE-- -a = $a; - $this->b = $b; - } -} - -$o = array(new Obj(1, 2), new Obj(3, 4)); - - -test('object', $o, false); -?> ---EXPECTF-- -object -9283c0a34f626aa16101a1620283c0a34f626aa16103a16204 -array(2) { - [0]=> - object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) - } - [1]=> - object(Obj)#%d (2) { - ["a"]=> - int(3) - ["b"]=> - int(4) - } -} -OK diff --git a/php/tests/014.phpt b/php/tests/014.phpt deleted file mode 100644 index c74f5f4d..00000000 --- a/php/tests/014.phpt +++ /dev/null @@ -1,54 +0,0 @@ ---TEST-- -Object-Reference test ---SKIPIF-- ---FILE-- -a = $a; - $this->b = $b; - } -} - -$o = new Obj(1, 2); -$a = array(&$o, &$o); - -test('object', $a, false); -?> ---EXPECTF-- -object -9284c001c0a34f626aa16101a1620282c0050002 -array(2) { - [0]=> - &object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) - } - [1]=> - &object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) - } -} -OK diff --git a/php/tests/015.phpt b/php/tests/015.phpt deleted file mode 100644 index fcd90760..00000000 --- a/php/tests/015.phpt +++ /dev/null @@ -1,62 +0,0 @@ ---TEST-- -Check for serialization handler ---SKIPIF-- - ---EXPECT-- -2 -82c001a3666f6f02 -array(1) { - ["foo"]=> - int(2) -} diff --git a/php/tests/015b.phpt b/php/tests/015b.phpt deleted file mode 100644 index 1fa9b460..00000000 --- a/php/tests/015b.phpt +++ /dev/null @@ -1,62 +0,0 @@ ---TEST-- -Check for serialization handler, ini-directive ---SKIPIF-- - ---EXPECT-- -2 -82c001a3666f6f02 -array(1) { - ["foo"]=> - int(2) -} diff --git a/php/tests/015d.phpt b/php/tests/015d.phpt deleted file mode 100644 index 5e912612..00000000 --- a/php/tests/015d.phpt +++ /dev/null @@ -1,62 +0,0 @@ ---TEST-- -Check for serialization handler ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.2 or older"; -} ---FILE-- - ---EXPECT-- -2 -81a3666f6f02 -array(1) { - ["foo"]=> - int(2) -} diff --git a/php/tests/015e.phpt b/php/tests/015e.phpt deleted file mode 100644 index f4434528..00000000 --- a/php/tests/015e.phpt +++ /dev/null @@ -1,65 +0,0 @@ ---TEST-- -Check for serialization handler, broken ---SKIPIF-- - ---EXPECT-- -1 -82c001a3666f6f01 -array(1) { - ["foo"]=> - int(1) -} diff --git a/php/tests/015f.phpt b/php/tests/015f.phpt deleted file mode 100644 index fe4278bd..00000000 --- a/php/tests/015f.phpt +++ /dev/null @@ -1,65 +0,0 @@ ---TEST-- -Check for serialization handler, broken ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.2 or older"; -} ---FILE-- - ---EXPECT-- -1 -81a3666f6f01 -array(1) { - ["foo"]=> - int(1) -} diff --git a/php/tests/016.phpt b/php/tests/016.phpt deleted file mode 100644 index 8fe47e88..00000000 --- a/php/tests/016.phpt +++ /dev/null @@ -1,64 +0,0 @@ ---TEST-- -Object test, __sleep ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - $this->d = $d; - } - - function __sleep() { - return array('a', 'b', 'c'); - } - -# function __wakeup() { -# $this->d = $this->a + $this->b + $this->c; -# } -} - -$o = new Obj(1, 2, 3, 4); - - -test('object', $o, true); -?> ---EXPECTF-- -object -84c0a34f626aa16101a4002a006202a6004f626a006303 -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - ["d"]=> - NULL -} -OK diff --git a/php/tests/016c.phpt b/php/tests/016c.phpt deleted file mode 100644 index fbd16b5b..00000000 --- a/php/tests/016c.phpt +++ /dev/null @@ -1,64 +0,0 @@ ---TEST-- -Object test, __sleep ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - $this->d = $d; - } - - function __sleep() { - return array('a', 'b', 'c'); - } - -# function __wakeup() { -# $this->d = $this->a + $this->b + $this->c; -# } -} - -$o = new Obj(1, 2, 3, 4); - - -test('object', $o, true); -?> ---EXPECTF-- -object -84c0a34f626aa16101a4002a006202a6004f626a006303 -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - ["d"]=> - NULL -} -OK diff --git a/php/tests/017.phpt b/php/tests/017.phpt deleted file mode 100644 index 6fbbd901..00000000 --- a/php/tests/017.phpt +++ /dev/null @@ -1,48 +0,0 @@ ---TEST-- -Object test, __wakeup ---SKIPIF-- ---FILE-- -b == 3 ? 'OK' : 'ERROR', PHP_EOL; -} - -class Obj { - var $a; - var $b; - - function __construct($a, $b) { - $this->a = $a; - $this->b = $b; - } - - function __wakeup() { - $this->b = $this->a * 3; - } -} - -$o = new Obj(1, 2); - - -test('object', $o, false); -?> ---EXPECTF-- -object -83c0a34f626aa16101a16202 -object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(3) -} -OK diff --git a/php/tests/018.phpt b/php/tests/018.phpt deleted file mode 100644 index f5ff4b72..00000000 --- a/php/tests/018.phpt +++ /dev/null @@ -1,84 +0,0 @@ ---TEST-- -Object test, __sleep error cases ---SKIPIF-- ---FILE-- -a = $a; - $this->b = $b; - } - - function __sleep() { - return array('c'); - } - -# function __wakeup() { -# $this->b = $this->a * 3; -# } -} - -class Opj { - var $a; - var $b; - - function __construct($a, $b) { - $this->a = $a; - $this->b = $b; - } - - function __sleep() { - return array(1); - } - -# function __wakeup() { -# -# } -} - -$o = new Obj(1, 2); -$p = new Opj(1, 2); - -test('nonexisting', $o, true); -test('wrong', $p, true); -?> ---EXPECTF-- -nonexisting -82c0a34f626aa163c0 -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b"]=> - NULL - ["c"]=> - NULL -} -OK -wrong -82c0a34f706a -object(Opj)#%d (2) { - ["a"]=> - NULL - ["b"]=> - NULL -} -OK diff --git a/php/tests/019.phpt b/php/tests/019.phpt deleted file mode 100644 index 46cccb3f..00000000 --- a/php/tests/019.phpt +++ /dev/null @@ -1,43 +0,0 @@ ---TEST-- -Object test, __autoload ---SKIPIF-- ---FILE-- -b == 2 ? 'OK' : 'ERROR', PHP_EOL; -} - -function __autoload($classname) { - class Obj { - var $a; - var $b; - - function __construct($a, $b) { - $this->a = $a; - $this->b = $b; - } - } -} - -test('autoload', '83c0a34f626aa16101a16202', false); -?> ---EXPECTF-- -autoload -83c0a34f626aa16101a16202 -object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) -} -OK diff --git a/php/tests/020.phpt b/php/tests/020.phpt deleted file mode 100644 index 4ed30e8b..00000000 --- a/php/tests/020.phpt +++ /dev/null @@ -1,31 +0,0 @@ ---TEST-- -Object test, incomplete class ---SKIPIF-- ---FILE-- - ---EXPECTF-- -incom -83c0a34f626aa16101a16202 -object(__PHP_Incomplete_Class)#%d (3) { - ["__PHP_Incomplete_Class_Name"]=> - string(3) "Obj" - ["a"]=> - int(1) - ["b"]=> - int(2) -} diff --git a/php/tests/021.phpt b/php/tests/021.phpt deleted file mode 100644 index 137d1007..00000000 --- a/php/tests/021.phpt +++ /dev/null @@ -1,56 +0,0 @@ ---TEST-- -Object Serializable interface ---SKIPIF-- -a = $a; - $this->b = $b; - } - - public function serialize() { - return pack('NN', $this->a, $this->b); - } - - public function unserialize($serialized) { - $tmp = unpack('N*', $serialized); - $this->__construct($tmp[1], $tmp[2]); - } -} - -$o = new Obj(1, 2); - -test('object', $o, false); -?> ---EXPECTF-- -object -82c003a34f626aa80000000100000002 -object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) -} -OK diff --git a/php/tests/022.phpt b/php/tests/022.phpt deleted file mode 100644 index 7eab4b80..00000000 --- a/php/tests/022.phpt +++ /dev/null @@ -1,45 +0,0 @@ ---TEST-- -Object test, unserialize_callback_func ---SKIPIF-- ---INI-- -unserialize_callback_func=autoload ---FILE-- -b == 2 ? 'OK' : 'ERROR', PHP_EOL; -} - -function autoload($classname) { - class Obj { - var $a; - var $b; - - function __construct($a, $b) { - $this->a = $a; - $this->b = $b; - } - } -} - -test('autoload', '83c0a34f626aa16101a16202', false); -?> ---EXPECTF-- -autoload -83c0a34f626aa16101a16202 -object(Obj)#%d (2) { - ["a"]=> - int(1) - ["b"]=> - int(2) -} -OK diff --git a/php/tests/023.phpt b/php/tests/023.phpt deleted file mode 100644 index 442fe3d5..00000000 --- a/php/tests/023.phpt +++ /dev/null @@ -1,45 +0,0 @@ ---TEST-- -Resource ---SKIPIF-- ---FILE-- - ---EXPECT-- -resource -c0 -NULL -OK diff --git a/php/tests/024.phpt b/php/tests/024.phpt deleted file mode 100644 index 589b788f..00000000 --- a/php/tests/024.phpt +++ /dev/null @@ -1,167 +0,0 @@ ---TEST-- -Recursive objects ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - } -} - -class Obj2 { - public $aa; - protected $bb; - private $cc; - private $obj; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - - $this->obj = new Obj($a, $b, $c); - } -} - -class Obj3 { - private $objs; - - function __construct($a, $b, $c) { - $this->objs = array(); - - for ($i = $a; $i < $c; $i += $b) { - $this->objs[] = new Obj($a, $i, $c); - } - } -} - -class Obj4 { - private $a; - private $obj; - - function __construct($a) { - $this->a = $a; - } - - public function set($obj) { - $this->obj = $obj; - } -} - -$o2 = new Obj2(1, 2, 3); -test('objectrec', $o2, false); - -$o3 = new Obj3(0, 1, 4); -test('objectrecarr', $o3, false); - -$o4 = new Obj4(100); -$o4->set($o4); -test('objectselfrec', $o4, true); -?> ---EXPECTF-- -objectrec -88c0a44f626a32a26161c0a5002a006262c0a8004f626a32006363c0a9004f626a32006f626a84c0a34f626aa16101a4002a006202a6004f626a006303a16101a16202a16303 -object(Obj2)#%d (7) { - ["aa"]=> - NULL - [%r"?bb"?:protected"?%r]=> - NULL - [%r"?cc"?:("Obj2":)?private"?%r]=> - NULL - [%r"?obj"?:("Obj2":)?private"?%r]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - ["a"]=> - int(1) - ["b"]=> - int(2) - ["c"]=> - int(3) -} -OK -objectrecarr -82c0a44f626a33aa004f626a33006f626a739484c0a34f626aa16100a4002a006200a6004f626a00630484c0a34f626aa16100a4002a006201a6004f626a00630484c0a34f626aa16100a4002a006202a6004f626a00630484c0a34f626aa16100a4002a006203a6004f626a006304 -object(Obj3)#%d (1) { - [%r"?objs"?:("Obj3":)?private"?%r]=> - array(4) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(0) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(1) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [2]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [3]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(3) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - } -} -OK -objectselfrec -83c0a44f626a34a7004f626a34006164a9004f626a34006f626a82c0040001 -object(Obj4)#%d (2) { - [%r"?a"?:("Obj4":)?private"?%r]=> - int(100) - [%r"?obj"?:("Obj4":)?private"?%r]=> - *RECURSION* -} -OK diff --git a/php/tests/024b.phpt b/php/tests/024b.phpt deleted file mode 100644 index 35fc0be9..00000000 --- a/php/tests/024b.phpt +++ /dev/null @@ -1,175 +0,0 @@ ---TEST-- -Recursive objects ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - } -} - -class Obj2 { - public $aa; - protected $bb; - private $cc; - private $obj; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - - $this->obj = new Obj($a, $b, $c); - } -} - -class Obj3 { - private $objs; - - function __construct($a, $b, $c) { - $this->objs = array(); - - for ($i = $a; $i < $c; $i += $b) { - $this->objs[] = new Obj($a, $i, $c); - } - } -} - -class Obj4 { - private $a; - private $obj; - - function __construct($a) { - $this->a = $a; - } - - public function set($obj) { - $this->obj = $obj; - } -} - -$o2 = new Obj2(1, 2, 3); -test('objectrec', $o2, false); - -$o3 = new Obj3(0, 1, 4); -test('objectrecarr', $o3, false); - -$o4 = new Obj4(100); -$o4->set($o4); -test('objectselfrec', $o4, true); -?> ---EXPECTF-- -objectrec -88c0a44f626a32a26161c0a5002a006262c0a8004f626a32006363c0a9004f626a32006f626a84c0a34f626aa16101a4002a006202a6004f626a006303a16101a16202a16303 -object(Obj2)#%d (7) { - ["aa"]=> - NULL - [%r"?bb"?:protected"?%r]=> - NULL - [%r"?cc"?:("Obj2":)?private"?%r]=> - NULL - [%r"?obj"?:("Obj2":)?private"?%r]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - ["a"]=> - int(1) - ["b"]=> - int(2) - ["c"]=> - int(3) -} -OK -objectrecarr -82c0a44f626a33aa004f626a33006f626a739484c0a34f626aa16100a4002a006200a6004f626a00630484c0a34f626aa16100a4002a006201a6004f626a00630484c0a34f626aa16100a4002a006202a6004f626a00630484c0a34f626aa16100a4002a006203a6004f626a006304 -object(Obj3)#%d (1) { - [%r"?objs"?:("Obj3":)?private"?%r]=> - array(4) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(0) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(1) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [2]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - [3]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - int(3) - [%r"?c"?:("Obj":)?private"?%r]=> - int(4) - } - } -} -OK -objectselfrec -83c0a44f626a34a7004f626a34006164a9004f626a34006f626a82c0040001 -object(Obj4)#%d (2) { - [%r"?a"?:("Obj4":)?private"?%r]=> - int(100) - [%r"?obj"?:("Obj4":)?private"?%r]=> - object(Obj4)#%d (2) { - [%r"?a"?:("Obj4":)?private"?%r]=> - int(100) - [%r"?obj"?:("Obj4":)?private"?%r]=> - *RECURSION* - } -} -OK diff --git a/php/tests/024c.phpt b/php/tests/024c.phpt deleted file mode 100644 index a3e6ca30..00000000 --- a/php/tests/024c.phpt +++ /dev/null @@ -1,170 +0,0 @@ ---TEST-- -Recursive objects ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - } -} - -class Obj2 { - public $aa; - protected $bb; - private $cc; - private $obj; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - - $this->obj = new Obj($a, $b, $c); - } -} - -class Obj3 { - private $objs; - - function __construct($a, $b, $c) { - $this->objs = array(); - - for ($i = $a; $i < $c; $i += $b) { - $this->objs[] = new Obj($a, $i, $c); - } - } -} - -class Obj4 { - private $a; - private $obj; - - function __construct($a) { - $this->a = $a; - } - - public function set($obj) { - $this->obj = $obj; - } -} - -$o2 = new Obj2(1, 2, 3); -test('objectrec', $o2, false); - -$o3 = new Obj3(0, 1, 4); -test('objectrecarr', $o3, false); - -$o4 = new Obj4(100); -$o4->set($o4); -test('objectselfrec', $o4, true); -?> ---EXPECTF-- -objectrec -88c0a44f626a32a26161c0a5002a006262c0a8004f626a32006363c0a9004f626a32006f626a84c0a34f626aa16101a4002a006202a6004f626a006303a16101a16202a16303 -object(Obj2)#%d (7) { - ["aa"]=> - NULL - ["bb:protected"]=> - NULL - ["cc:private"]=> - NULL - ["obj:private"]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - ["a"]=> - int(1) - ["b"]=> - int(2) - ["c"]=> - int(3) -} -OK -objectrecarr -82c0a44f626a33aa004f626a33006f626a739484c0a34f626aa16100a4002a006200a6004f626a00630484c0a34f626aa16100a4002a006201a6004f626a00630484c0a34f626aa16100a4002a006202a6004f626a00630484c0a34f626aa16100a4002a006203a6004f626a006304 -object(Obj3)#%d (1) { - ["objs:private"]=> - array(4) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - int(0) - ["c:private"]=> - int(4) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - int(1) - ["c:private"]=> - int(4) - } - [2]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(4) - } - [3]=> - object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - int(3) - ["c:private"]=> - int(4) - } - } -} -OK -objectselfrec -83c0a44f626a34a7004f626a34006164a9004f626a34006f626a82c0040001 -object(Obj4)#%d (2) { - ["a:private"]=> - int(100) - ["obj:private"]=> - object(Obj4)#%d (2) { - ["a:private"]=> - int(100) - ["obj:private"]=> - *RECURSION* - } -} -OK diff --git a/php/tests/025.phpt b/php/tests/025.phpt deleted file mode 100644 index cb45a39a..00000000 --- a/php/tests/025.phpt +++ /dev/null @@ -1,123 +0,0 @@ ---TEST-- -Object test, array of objects with __sleep ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - $this->d = $d; - } - - function __sleep() { - return array('a', 'b', 'c'); - } - -# function __wakeup() { -# $this->d = $this->a + $this->b + $this->c; -# } -} - -$array = array( - new Obj("aa", "bb", "cc", "dd"), - new Obj("ee", "ff", "gg", "hh"), - new Obj(1, 2, 3, 4), -); - - -test('array', $array, true); -?> ---EXPECTF-- -array(3) { - [0]=> - object(Obj)#1 (4) { - ["a"]=> - string(2) "aa" - [%r"?b"?:protected"?%r]=> - string(2) "bb" - [%r"?c"?:("Obj":)?private"?%r]=> - string(2) "cc" - ["d"]=> - string(2) "dd" - } - [1]=> - object(Obj)#2 (4) { - ["a"]=> - string(2) "ee" - [%r"?b"?:protected"?%r]=> - string(2) "ff" - [%r"?c"?:("Obj":)?private"?%r]=> - string(2) "gg" - ["d"]=> - string(2) "hh" - } - [2]=> - object(Obj)#3 (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - ["d"]=> - int(4) - } -} -array(3) { - [0]=> - object(Obj)#4 (4) { - ["a"]=> - string(2) "aa" - [%r"?b"?:protected"?%r]=> - string(2) "bb" - [%r"?c"?:("Obj":)?private"?%r]=> - string(2) "cc" - ["d"]=> - NULL - } - [1]=> - object(Obj)#5 (4) { - ["a"]=> - string(2) "ee" - [%r"?b"?:protected"?%r]=> - string(2) "ff" - [%r"?c"?:("Obj":)?private"?%r]=> - string(2) "gg" - ["d"]=> - NULL - } - [2]=> - object(Obj)#6 (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - ["d"]=> - NULL - } -} diff --git a/php/tests/025c.phpt b/php/tests/025c.phpt deleted file mode 100644 index 35018bbb..00000000 --- a/php/tests/025c.phpt +++ /dev/null @@ -1,123 +0,0 @@ ---TEST-- -Object test, array of objects with __sleep ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - $this->d = $d; - } - - function __sleep() { - return array('a', 'b', 'c'); - } - -# function __wakeup() { -# $this->d = $this->a + $this->b + $this->c; -# } -} - -$array = array( - new Obj("aa", "bb", "cc", "dd"), - new Obj("ee", "ff", "gg", "hh"), - new Obj(1, 2, 3, 4), -); - - -test('array', $array, true); -?> ---EXPECTF-- -array(3) { - [0]=> - object(Obj)#1 (4) { - ["a"]=> - string(2) "aa" - ["b:protected"]=> - string(2) "bb" - ["c:private"]=> - string(2) "cc" - ["d"]=> - string(2) "dd" - } - [1]=> - object(Obj)#2 (4) { - ["a"]=> - string(2) "ee" - ["b:protected"]=> - string(2) "ff" - ["c:private"]=> - string(2) "gg" - ["d"]=> - string(2) "hh" - } - [2]=> - object(Obj)#3 (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - ["d"]=> - int(4) - } -} -array(3) { - [0]=> - object(Obj)#4 (4) { - ["a"]=> - string(2) "aa" - ["b:protected"]=> - string(2) "bb" - ["c:private"]=> - string(2) "cc" - ["d"]=> - NULL - } - [1]=> - object(Obj)#5 (4) { - ["a"]=> - string(2) "ee" - ["b:protected"]=> - string(2) "ff" - ["c:private"]=> - string(2) "gg" - ["d"]=> - NULL - } - [2]=> - object(Obj)#6 (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - ["d"]=> - NULL - } -} diff --git a/php/tests/026.phpt b/php/tests/026.phpt deleted file mode 100644 index f7c706c4..00000000 --- a/php/tests/026.phpt +++ /dev/null @@ -1,109 +0,0 @@ ---TEST-- -Cyclic array test ---INI-- ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- - array( - 'b' => 'c', - 'd' => 'e' - ), -); - -$a['f'] = &$a; - -test('array', $a, true); - -$a = array("foo" => &$b); -$b = array(1, 2, $a); -var_dump($a); -var_dump($k = msgpack_unserialize(msgpack_serialize($a))); - -$k["foo"][1] = "b"; -var_dump($k); -?> ---EXPECT-- -array -82a16182a162a163a164a165a16683c001a16182a162a163a164a165a16682c0020003 -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - &array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - *RECURSION* - } -} -OK -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - *RECURSION* - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - string(1) "b" - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } -} diff --git a/php/tests/026b.phpt b/php/tests/026b.phpt deleted file mode 100644 index dd18fa36..00000000 --- a/php/tests/026b.phpt +++ /dev/null @@ -1,152 +0,0 @@ ---TEST-- -Cyclic array test ---INI-- ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.1.0') < 0) { - echo "skip tests in PHP 5.1 or newer"; -} ---FILE-- - array( - 'b' => 'c', - 'd' => 'e' - ), -); - -$a['f'] = &$a; - -test('array', $a, true); - -$a = array("foo" => &$b); -$b = array(1, 2, $a); -var_dump($a); -var_dump($k = msgpack_unserialize(msgpack_serialize($a))); - -$k["foo"][1] = "b"; -var_dump($k); -?> ---EXPECT-- -array -82a16182a162a163a164a165a16683c001a16182a162a163a164a165a16682c0020003 -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - &array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - &array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - *RECURSION* - } - } -} -OK -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - *RECURSION* - } - } - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } - } - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - string(1) "b" - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - string(1) "b" - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/026d.phpt b/php/tests/026d.phpt deleted file mode 100644 index 6a683c97..00000000 --- a/php/tests/026d.phpt +++ /dev/null @@ -1,147 +0,0 @@ ---TEST-- -Cyclic array test ---INI-- ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.0 or older"; -} ---FILE-- - array( - 'b' => 'c', - 'd' => 'e' - ), -); - -$a['f'] = &$a; - -test('array', $a, true); - -$a = array("foo" => &$b); -$b = array(1, 2, $a); -var_dump($a); -var_dump($k = msgpack_unserialize(msgpack_serialize($a))); - -$k["foo"][1] = "b"; -var_dump($k); -?> ---EXPECT-- -array -82a16182a162a163a164a165a16682a16182a162a163a164a165a16682a16182a162a163a164a165a166c0 -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - NULL - } - } -} -OK -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - *RECURSION* - } - } - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } - } - } -} -array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - string(1) "b" - [2]=> - array(1) { - ["foo"]=> - &array(3) { - [0]=> - int(1) - [1]=> - string(1) "b" - [2]=> - array(1) { - ["foo"]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/027.phpt b/php/tests/027.phpt deleted file mode 100644 index 3963085f..00000000 --- a/php/tests/027.phpt +++ /dev/null @@ -1,77 +0,0 @@ ---TEST-- -Check for serialization handler ---SKIPIF-- - ---EXPECT-- -bool(true) -read -wrote: 83c001a3666f6f01a474657374a6666f6f626172 -array(2) { - ["foo"]=> - int(1) - ["test"]=> - string(6) "foobar" -} diff --git a/php/tests/027d.phpt b/php/tests/027d.phpt deleted file mode 100644 index a8b9e750..00000000 --- a/php/tests/027d.phpt +++ /dev/null @@ -1,77 +0,0 @@ ---TEST-- -Check for serialization handler ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.2 or older"; -} ---FILE-- - ---EXPECT-- -bool(true) -read -wrote: 82a3666f6f01a474657374a6666f6f626172 -array(2) { - ["foo"]=> - int(1) - ["test"]=> - string(6) "foobar" -} diff --git a/php/tests/028.phpt b/php/tests/028.phpt deleted file mode 100644 index 6cd9bb25..00000000 --- a/php/tests/028.phpt +++ /dev/null @@ -1,169 +0,0 @@ ---TEST-- -Serialize object into session, full set ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -class Bar { - private static $s1 = array(); - protected static $s2 = array(); - public static $s3 = array(); - - public $d1; - private $d2; - protected $d3; - - public function __construct() { - } - - public function set($foo) { - $this->d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -$output = ''; - -function open($path, $name) { - return true; -} - -function close() { - return true; -} - -function read($id) { - global $output; - $output .= "read" . PHP_EOL; - $a = new Bar(); - $b = new Foo($a); - $a->set($b); - $session = array('old' => $b); - return msgpack_serialize($session); -} - -function write($id, $data) { - global $output; - $output .= "write: "; - $output .= bin2hex($data) . PHP_EOL; - return true; -} - -function destroy($id) { - return true; -} - -function gc($time) { - return true; -} - -ini_set('session.serialize_handler', 'msgpack'); - -session_set_save_handler('open', 'close', 'read', 'write', 'destroy', 'gc'); - -session_start(); - -$_SESSION['test'] = "foobar"; -$a = new Bar(); -$b = new Foo($a); -$a->set($b); -$_SESSION['new'] = $a; - -session_write_close(); - -echo $output; -var_dump($_SESSION); -?> ---EXPECTF-- -read -write: 84c001a36f6c6484c0a3466f6fa700466f6f00643184c0a3426172a2643182c0040002a70042617200643282c0040002a5002a00643382c0040002a5002a00643282c0040003a2643382c0040003a474657374a6666f6f626172a36e657784c0a3426172a2643184c0a3466f6fa700466f6f00643182c0040009a5002a00643282c0040009a2643382c0040009a70042617200643282c004000aa5002a00643382c004000a -array(3) { - ["old"]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - ["test"]=> - string(6) "foobar" - ["new"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } -} diff --git a/php/tests/028b.phpt b/php/tests/028b.phpt deleted file mode 100644 index 651dc961..00000000 --- a/php/tests/028b.phpt +++ /dev/null @@ -1,676 +0,0 @@ ---TEST-- -Serialize object into session, full set ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -class Bar { - private static $s1 = array(); - protected static $s2 = array(); - public static $s3 = array(); - - public $d1; - private $d2; - protected $d3; - - public function __construct() { - } - - public function set($foo) { - $this->d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -$output = ''; - -function open($path, $name) { - return true; -} - -function close() { - return true; -} - -function read($id) { - global $output; - $output .= "read" . PHP_EOL; - $a = new Bar(); - $b = new Foo($a); - $a->set($b); - $session = array('old' => $b); - return msgpack_serialize($session); -} - -function write($id, $data) { - global $output; - $output .= "write: "; - $output .= bin2hex($data) . PHP_EOL; - return true; -} - -function destroy($id) { - return true; -} - -function gc($time) { - return true; -} - -ini_set('session.serialize_handler', 'msgpack'); - -session_set_save_handler('open', 'close', 'read', 'write', 'destroy', 'gc'); - -session_start(); - -$_SESSION['test'] = "foobar"; -$a = new Bar(); -$b = new Foo($a); -$a->set($b); -$_SESSION['new'] = $a; - -session_write_close(); - -echo $output; -var_dump($_SESSION); -?> ---EXPECTF-- -read -write: 84c001a36f6c6484c0a3466f6fa700466f6f00643184c0a3426172a2643182c0040002a70042617200643282c0040002a5002a00643382c0040002a5002a00643282c0040003a2643382c0040003a474657374a6666f6f626172a36e657784c0a3426172a2643184c0a3466f6fa700466f6f00643182c0040009a5002a00643282c0040009a2643382c0040009a70042617200643282c004000aa5002a00643382c004000a -array(3) { - ["old"]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#3 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - [%r"?d2"?:("Bar":)?private"?%r]=> - *RECURSION* - [%r"?d3"?:protected"?%r]=> - *RECURSION* - } - } - } - } - ["test"]=> - string(6) "foobar" - ["new"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - [%r"?d2"?:protected"?%r]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d2"?:("Bar":)?private"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - [%r"?d3"?:protected"?%r]=> - object(Foo)#6 (3) { - [%r"?d1"?:("Foo":)?private"?%r]=> - *RECURSION* - [%r"?d2"?:protected"?%r]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/028c.phpt b/php/tests/028c.phpt deleted file mode 100644 index a841c974..00000000 --- a/php/tests/028c.phpt +++ /dev/null @@ -1,672 +0,0 @@ ---TEST-- -Serialize object into session, full set ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1"; -} ---FILE-- -d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -class Bar { - private static $s1 = array(); - protected static $s2 = array(); - public static $s3 = array(); - - public $d1; - private $d2; - protected $d3; - - public function __construct() { - } - - public function set($foo) { - $this->d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -$output = ''; - -function open($path, $name) { - return true; -} - -function close() { - return true; -} - -function read($id) { - global $output; - $output .= "read" . PHP_EOL; - $a = new Bar(); - $b = new Foo($a); - $a->set($b); - $session = array('old' => $b); - return msgpack_serialize($session); -} - -function write($id, $data) { - global $output; - $output .= "write: "; - $output .= bin2hex($data) . PHP_EOL; - return true; -} - -function destroy($id) { - return true; -} - -function gc($time) { - return true; -} - -ini_set('session.serialize_handler', 'msgpack'); - -session_set_save_handler('open', 'close', 'read', 'write', 'destroy', 'gc'); - -session_start(); - -$_SESSION['test'] = "foobar"; -$a = new Bar(); -$b = new Foo($a); -$a->set($b); -$_SESSION['new'] = $a; - -session_write_close(); - -echo $output; -var_dump($_SESSION); -?> ---EXPECTF-- -read -write: 83a36f6c6484c0a3466f6fa700466f6f00643184c0a3426172a2643182c0040002a70042617200643282c0040002a5002a00643382c0040002a5002a00643282c0040003a2643382c0040003a474657374a6666f6f626172a36e657784c0a3426172a2643184c0a3466f6fa700466f6f00643182c0040009a5002a00643282c0040009a2643382c0040009a70042617200643282c004000aa5002a00643382c004000a -array(3) { - ["old"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - } - ["test"]=> - string(6) "foobar" - ["new"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/028d.phpt b/php/tests/028d.phpt deleted file mode 100644 index ef4c8b4d..00000000 --- a/php/tests/028d.phpt +++ /dev/null @@ -1,671 +0,0 @@ ---TEST-- -Serialize object into session, full set ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.0 or older"; -} ---FILE-- -d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -class Bar { - private static $s1 = array(); - protected static $s2 = array(); - public static $s3 = array(); - - public $d1; - private $d2; - protected $d3; - - public function __construct() { - } - - public function set($foo) { - $this->d1 = $foo; - $this->d2 = $foo; - $this->d3 = $foo; - } -} - -$output = ''; - -function open($path, $name) { - return true; -} - -function close() { - return true; -} - -function read($id) { - global $output; - $output .= "read" . PHP_EOL; - $a = new Bar(); - $b = new Foo($a); - $a->set($b); - $session = array('old' => $b); - return msgpack_serialize($session); -} - -function write($id, $data) { - global $output; - $output .= "write: "; - $output .= bin2hex($data) . PHP_EOL; - return true; -} - -function destroy($id) { - return true; -} - -function gc($time) { - return true; -} - -ini_set('session.serialize_handler', 'msgpack'); - -session_set_save_handler('open', 'close', 'read', 'write', 'destroy', 'gc'); - -session_start(); - -$_SESSION['test'] = "foobar"; -$a = new Bar(); -$b = new Foo($a); -$a->set($b); -$_SESSION['new'] = $a; - -session_write_close(); - -echo $output; -var_dump($_SESSION); -?> ---EXPECTF-- -read -write: 83a36f6c6484c0a3466f6fa700466f6f00643184c0a3426172a2643182c0040002a70042617200643282c0040002a5002a00643382c0040002a5002a00643282c0040003a2643382c0040003a474657374a6666f6f626172a36e657784c0a3426172a2643184c0a3466f6fa700466f6f00643182c0040009a5002a00643282c0040009a2643382c0040009a70042617200643282c004000aa5002a00643382c004000a -array(3) { - ["old"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d2:private"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - ["d3:protected"]=> - object(Foo)#3 (3) { - ["d1:private"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d2:protected"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - ["d3"]=> - object(Bar)#4 (3) { - ["d1"]=> - *RECURSION* - ["d2:private"]=> - *RECURSION* - ["d3:protected"]=> - *RECURSION* - } - } - } - } - ["test"]=> - string(6) "foobar" - ["new"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d2:protected"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - ["d3"]=> - object(Bar)#5 (3) { - ["d1"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d2:private"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - ["d3:protected"]=> - object(Foo)#6 (3) { - ["d1:private"]=> - *RECURSION* - ["d2:protected"]=> - *RECURSION* - ["d3"]=> - *RECURSION* - } - } - } - } -} diff --git a/php/tests/029.phpt b/php/tests/029.phpt deleted file mode 100644 index fe71e145..00000000 --- a/php/tests/029.phpt +++ /dev/null @@ -1,48 +0,0 @@ ---TEST-- -Msgpack module info ---SKIPIF-- - ---FILE-- - $val) -{ - if (strcmp($val, 'msgpack') == 0 || $section) - { - $section = true; - } - else - { - continue; - } - - if (empty($val)) - { - $blank++; - if ($blank == 3) - { - $section = false; - } - } - - echo $val, PHP_EOL; -} ---EXPECTF-- -msgpack - -MessagePack Support => enabled -Session Support => enabled -extension Version => %s -header Version => %s - -Directive => Local Value => Master Value -msgpack.error_display => On => On -msgpack.illegal_key_insert => Off => Off -msgpack.php_only => On => On diff --git a/php/tests/030.phpt b/php/tests/030.phpt deleted file mode 100644 index 3b8d986e..00000000 --- a/php/tests/030.phpt +++ /dev/null @@ -1,230 +0,0 @@ ---TEST-- -Unserialize invalid data ---SKIPIF-- ---FILE-- - 10, "foo"), - true, - false, - 0.187182, - "dakjdh98389\000", - null, - (object)array(1,2,3), -); - -error_reporting(0); - -foreach ($datas as $data) { - $str = msgpack_serialize($data); - $len = strlen($str); - - // truncated - for ($i = 0; $i < $len - 1; $i++) { - $v = msgpack_unserialize(substr($str, 0, $i)); - - if (is_object($data) || is_array($data)) { - if ($v !== null && $v !== false && $v != $data) { - echo "output at $i:\n"; - var_dump($v); - } - } else if ($v !== null && $v == $data) { - continue; - } else if ($v !== null && $v !== $data) { - echo "output at $i:\n"; - var_dump($v); - echo "vs.\n"; - var_dump($data); - } - } - - // padded - $str .= "98398afa\000y21_ "; - $v = msgpack_unserialize($str); - if ($v !== $data && !(is_object($data) && $v == $data)) { - echo "padded should get original\n"; - var_dump($v); - echo "vs.\n"; - var_dump($data); - } -} -?> ---EXPECTF-- -output at 3: -array(1) { - [0]=> - int(1) -} -output at 4: -array(1) { - [0]=> - int(1) -} -output at 5: -array(2) { - [0]=> - int(1) - [1]=> - int(2) -} -output at 6: -array(2) { - [0]=> - int(1) - [1]=> - int(2) -} -output at 7: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 8: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 9: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 10: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 11: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 12: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 13: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 14: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 15: -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -output at 16: -array(4) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - ["testing"]=> - int(10) -} -output at 17: -array(4) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - ["testing"]=> - int(10) -} -output at 18: -array(4) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - ["testing"]=> - int(10) -} -output at 19: -array(4) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - ["testing"]=> - int(10) -} -output at 11: -object(stdClass)#2 (0) { -} -output at 12: -object(stdClass)#3 (0) { -} -output at 13: -object(stdClass)#2 (1) { - [0]=> - int(1) -} -output at 14: -object(stdClass)#3 (1) { - [0]=> - int(1) -} -output at 15: -object(stdClass)#2 (2) { - [0]=> - int(1) - [1]=> - int(2) -} diff --git a/php/tests/031.phpt b/php/tests/031.phpt deleted file mode 100644 index ce3a7c41..00000000 --- a/php/tests/031.phpt +++ /dev/null @@ -1,94 +0,0 @@ ---TEST-- -Object Serializable interface throws exceptions ---SKIPIF-- -a = $a; - $this->b = $b; - } - - public function serialize() { - $c = self::$count++; - echo "call serialize, ", ($this->a ? "throw" : "no throw"), PHP_EOL; - if ($this->a) { - throw new Exception("exception in serialize $c"); - } - return pack('NN', $this->a, $this->b); - } - - public function unserialize($serialized) { - $tmp = unpack('N*', $serialized); - $this->__construct($tmp[1], $tmp[2]); - $c = self::$count++; - echo "call unserialize, ", ($this->b ? "throw" : "no throw"), PHP_EOL; - if ($this->b) { - throw new Exception("exception in unserialize $c"); - } - } -} - -$a = new Obj(1, 0); -$a = new Obj(0, 0); -$b = new Obj(0, 0); -$c = new Obj(1, 0); -$d = new Obj(0, 1); - -echo "a, a, c", PHP_EOL; -try { - test(array($a, $a, $c)); -} catch (Exception $e) { - if (version_compare(phpversion(), "5.3.0", ">=")) { - if ($e->getPrevious()) { - $e = $e->getPrevious(); - } - } - - echo $e->getMessage(), PHP_EOL; -} - -echo "b, b, d", PHP_EOL; - -try { - test(array($b, $b, $d)); -} catch (Exception $e) { - if (version_compare(phpversion(), "5.3.0", ">=")) { - if ($e->getPrevious()) { - $e = $e->getPrevious(); - } - } - - echo $e->getMessage(), PHP_EOL; -} -?> ---EXPECT-- -a, a, c -call serialize, no throw -call serialize, throw -exception in serialize 2 -b, b, d -call serialize, no throw -call serialize, no throw -call unserialize, no throw -call unserialize, throw -exception in unserialize 6 diff --git a/php/tests/032.phpt b/php/tests/032.phpt deleted file mode 100644 index b120ea91..00000000 --- a/php/tests/032.phpt +++ /dev/null @@ -1,76 +0,0 @@ ---TEST-- -Object test, __sleep and __wakeup exceptions ---SKIPIF-- ---FILE-- -a = $a; - $this->b = $b; - } - - function __sleep() { - $c = self::$count++; - if ($this->a) { - throw new Exception("exception in __sleep $c"); - } - return array('a', 'b'); - } - - function __wakeup() { - $c = self::$count++; - if ($this->b) { - throw new Exception("exception in __wakeup $c"); - } - $this->b = $this->a * 3; - } -} - - -$a = new Obj(1, 0); -$b = new Obj(0, 1); -$c = new Obj(0, 0); - -try { - test($a); -} catch (Exception $e) { - echo $e->getMessage(), PHP_EOL; -} - -try { - test($b); -} catch (Exception $e) { - echo $e->getMessage(), PHP_EOL; -} - -try { - test($c); -} catch (Exception $e) { - echo $e->getMessage(), PHP_EOL; -} -?> ---EXPECTF-- -exception in __sleep 0 -exception in __wakeup 2 -object(Obj)#%d (2) { - ["a"]=> - int(0) - ["b"]=> - int(0) -} diff --git a/php/tests/033.phpt b/php/tests/033.phpt deleted file mode 100644 index 682fd4db..00000000 --- a/php/tests/033.phpt +++ /dev/null @@ -1,55 +0,0 @@ ---TEST-- -Object test, cyclic references ---SKIPIF-- ---FILE-- -parent = null; - $this->children = array(); - } - - public function addChild(Foo $obj) { - $this->children[] = $obj; - $obj->setParent($this); - } - - public function setParent(Foo $obj) { - $this->parent = $obj; - } -} - -$obj1 = new Foo(); - -for ($i = 0; $i < 10; $i++) { - $obj = new Foo(); - $obj1->addChild($obj); -} - -$o = msgpack_unserialize(msgpack_serialize($obj1->children)); - -foreach ($obj1->children as $k => $v) { - $obj_v = $v; - $o_v = $o[$k]; - - echo gettype($obj_v), " ", gettype($o_v), PHP_EOL; -} -?> ---EXPECT-- -object object -object object -object object -object object -object object -object object -object object -object object -object object -object object diff --git a/php/tests/034.phpt b/php/tests/034.phpt deleted file mode 100644 index f14d934f..00000000 --- a/php/tests/034.phpt +++ /dev/null @@ -1,41 +0,0 @@ ---TEST-- -Unserialize invalid random data ---SKIPIF-- ---FILE-- - 10, "foo"), - true, - false, - 0.187182, - "dakjdh98389\000", - null, - (object)array(1,2,3), -); - -error_reporting(0); - -foreach ($datas as $data) -{ - $str = msgpack_serialize($data); - $len = strlen($str); - - for ($j = 0; $j < 200; $j++) - { - for ($i = 0; $i < $len - 1; $i++) - { - $sub = substr($str, 0, $i); - $sub .= mcrypt_create_iv(30, MCRYPT_DEV_URANDOM); - $php_errormsg = null; - $v = msgpack_unserialize($sub); - } - } -} - ---EXPECT-- diff --git a/php/tests/035.phpt b/php/tests/035.phpt deleted file mode 100644 index d680565f..00000000 --- a/php/tests/035.phpt +++ /dev/null @@ -1,34 +0,0 @@ ---TEST-- -Profiling perf test. ---SKIPIF-- - ---FILE-- - 400 ? "GOOD" : "BAD")); -} -?> ---EXPECTF-- -%d iterations took %f seconds: %d/s (GOOD) diff --git a/php/tests/040.phpt b/php/tests/040.phpt deleted file mode 100644 index 5b397d31..00000000 --- a/php/tests/040.phpt +++ /dev/null @@ -1,43 +0,0 @@ ---TEST-- -broken random data test ---SKIPIF-- ---FILE-- - ---EXPECT-- diff --git a/php/tests/040b.phpt b/php/tests/040b.phpt deleted file mode 100644 index ea048afc..00000000 --- a/php/tests/040b.phpt +++ /dev/null @@ -1,44 +0,0 @@ ---TEST-- -broken random data test : MessagePack class ---SKIPIF-- ---FILE-- -unpack($serialized)) === null) { - return true; - } - - // whole data is read? - if ($serialized !== msgpack_serialize($unserialized)) { - return true; - } - - echo bin2hex($serialized), "\n"; - var_dump($unserialized); - - return false; -} - -mt_srand(0x4c05b583); -for ($i = 0; $i < 100; ++$i) { - if (!test()) break; -} - -?> ---EXPECT-- diff --git a/php/tests/040c.phpt b/php/tests/040c.phpt deleted file mode 100644 index bd882fa6..00000000 --- a/php/tests/040c.phpt +++ /dev/null @@ -1,53 +0,0 @@ ---TEST-- -broken random data test : MessagePackUnpacker::feed ---SKIPIF-- ---FILE-- -feed($serialized); - if ($unpacker->execute()) - { - if (($unserialized = $unpacker->data()) === null) { - return true; - } - $unpacker->reset(); - } - else - { - return true; - } - - // whole data is read? - if ($serialized !== msgpack_serialize($unserialized)) { - return true; - } - - echo bin2hex($serialized), "\n"; - var_dump($unserialized); - - return false; -} - -mt_srand(0x4c05b583); -for ($i = 0; $i < 100; ++$i) { - if (!test()) break; -} - -?> ---EXPECT-- diff --git a/php/tests/040d.phpt b/php/tests/040d.phpt deleted file mode 100644 index de4c01d8..00000000 --- a/php/tests/040d.phpt +++ /dev/null @@ -1,52 +0,0 @@ ---TEST-- -broken random data test : MessagePackUnpacker::execute ---SKIPIF-- ---FILE-- -execute($serialized, $offset)) - { - if (($unserialized = $unpacker->data()) === null) { - return true; - } - $unpacker->reset(); - } - else - { - return true; - } - - // whole data is read? - if ($serialized !== msgpack_serialize($unserialized)) { - return true; - } - - echo bin2hex($serialized), "\n"; - var_dump($unserialized); - - return false; -} - -mt_srand(0x4c05b583); -for ($i = 0; $i < 100; ++$i) { - if (!test()) break; -} - -?> ---EXPECT-- diff --git a/php/tests/041.phpt b/php/tests/041.phpt deleted file mode 100644 index 6400fd97..00000000 --- a/php/tests/041.phpt +++ /dev/null @@ -1,47 +0,0 @@ ---TEST-- -Check for double NaN, Inf, -Inf, 0, and -0 ---FILE-- - ---EXPECT-- -empty array: -90 -array(0) { -} -array(1, 2, 3) -93010203 -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(array(1, 2, 3), arr... -93930102039304050693070809 -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -array("foo", "FOO", "Foo") -93a3666f6fa3464f4fa3466f6f -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "FOO" - [2]=> - string(3) "Foo" -} -array(1, 123.45, true, ... -9701cb405edccccccccccdc3c293010293090807c0a3666f6f -array(7) { - [0]=> - int(1) - [1]=> - float(123.45) - [2]=> - bool(true) - [3]=> - bool(false) - [4]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - array(3) { - [0]=> - int(9) - [1]=> - int(8) - [2]=> - int(7) - } - } - [5]=> - NULL - [6]=> - string(3) "foo" -} diff --git a/php/tests/060.phpt b/php/tests/060.phpt deleted file mode 100644 index c210fa99..00000000 --- a/php/tests/060.phpt +++ /dev/null @@ -1,315 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/060b.phpt b/php/tests/060b.phpt deleted file mode 100644 index 5bf29afd..00000000 --- a/php/tests/060b.phpt +++ /dev/null @@ -1,324 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/060c.phpt b/php/tests/060c.phpt deleted file mode 100644 index 871a145c..00000000 --- a/php/tests/060c.phpt +++ /dev/null @@ -1,319 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/061.phpt b/php/tests/061.phpt deleted file mode 100644 index 74e27ac2..00000000 --- a/php/tests/061.phpt +++ /dev/null @@ -1,320 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/061b.phpt b/php/tests/061b.phpt deleted file mode 100644 index 083a6df9..00000000 --- a/php/tests/061b.phpt +++ /dev/null @@ -1,329 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/061c.phpt b/php/tests/061c.phpt deleted file mode 100644 index 89ae1bbb..00000000 --- a/php/tests/061c.phpt +++ /dev/null @@ -1,324 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/062.phpt b/php/tests/062.phpt deleted file mode 100644 index 159e00de..00000000 --- a/php/tests/062.phpt +++ /dev/null @@ -1,64 +0,0 @@ ---TEST-- -Extra bytes buffered streaming unserialization ---SKIPIF-- ---FILE-- -feed($str); - - while (true) { - if ($unpacker->execute()) { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } else { - break; - } - } - $i += $len; - } - } -} - -test('array(1, 2, 3)', array('9301020392')); -test('array(1, 2, 3), array(3, 9), 4', array('9301020392', '030904')); ---EXPECTF-- -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(2) { - [0]=> - int(3) - [1]=> - int(9) -} -int(4) diff --git a/php/tests/063.phpt b/php/tests/063.phpt deleted file mode 100644 index 5be7e099..00000000 --- a/php/tests/063.phpt +++ /dev/null @@ -1,68 +0,0 @@ ---TEST-- -Extra bytes unbuffered streaming unserialization ---SKIPIF-- ---FILE-- -execute($str, $offset)) { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = substr($str, $offset); - $offset = 0; - } else { - break; - } - } - $i += $len; - } - } -} - -test('array(1, 2, 3)', array('9301020392')); -test('array(1, 2, 3), array(3, 9), 4', array('9301020392', '030904')); ---EXPECTF-- -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(2) { - [0]=> - int(3) - [1]=> - int(9) -} -int(4) diff --git a/php/tests/064.phpt b/php/tests/064.phpt deleted file mode 100644 index bbaffe9c..00000000 --- a/php/tests/064.phpt +++ /dev/null @@ -1,317 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization (single) ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/064b.phpt b/php/tests/064b.phpt deleted file mode 100644 index 9de7a4ea..00000000 --- a/php/tests/064b.phpt +++ /dev/null @@ -1,326 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization (single) ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/064c.phpt b/php/tests/064c.phpt deleted file mode 100644 index ad4529b8..00000000 --- a/php/tests/064c.phpt +++ /dev/null @@ -1,321 +0,0 @@ ---TEST-- -Check for buffered streaming unserialization (single) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/065.phpt b/php/tests/065.phpt deleted file mode 100644 index 5c13b7f5..00000000 --- a/php/tests/065.phpt +++ /dev/null @@ -1,322 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization (single) ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/065b.phpt b/php/tests/065b.phpt deleted file mode 100644 index 1f9a7362..00000000 --- a/php/tests/065b.phpt +++ /dev/null @@ -1,331 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization (single) ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/065c.phpt b/php/tests/065c.phpt deleted file mode 100644 index 365fdfee..00000000 --- a/php/tests/065c.phpt +++ /dev/null @@ -1,326 +0,0 @@ ---TEST-- -Check for unbuffered streaming unserialization (single) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/066.phpt b/php/tests/066.phpt deleted file mode 100644 index d2e430d6..00000000 --- a/php/tests/066.phpt +++ /dev/null @@ -1,70 +0,0 @@ ---TEST-- -Extra bytes buffered streaming unserialization (single) ---SKIPIF-- ---FILE-- -feed($str); - - while (true) { - if ($unpacker->execute()) { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } else { - break; - } - } - $i += $len; - } - } -} - -test('array(1, 2, 3)', array('9301020392')); -test('array(1, 2, 3), array(3, 9), 4', array('9301020392', '030904')); ---EXPECTF-- -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(2) { - [0]=> - int(3) - [1]=> - int(9) - } -} -int(4) diff --git a/php/tests/067.phpt b/php/tests/067.phpt deleted file mode 100644 index 96c14429..00000000 --- a/php/tests/067.phpt +++ /dev/null @@ -1,74 +0,0 @@ ---TEST-- -Extra bytes unbuffered streaming unserialization (single) ---SKIPIF-- ---FILE-- -execute($str, $offset)) { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = substr($str, $offset); - $offset = 0; - } else { - break; - } - } - $i += $len; - } - } -} - -test('array(1, 2, 3)', array('9301020392')); -test('array(1, 2, 3), array(3, 9), 4', array('9301020392', '030904')); ---EXPECTF-- -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(2) { - [0]=> - int(3) - [1]=> - int(9) - } -} -int(4) diff --git a/php/tests/070.phpt b/php/tests/070.phpt deleted file mode 100644 index b9b1b549..00000000 --- a/php/tests/070.phpt +++ /dev/null @@ -1,299 +0,0 @@ ---TEST-- -Check for alias functions ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- - 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/070b.phpt b/php/tests/070b.phpt deleted file mode 100644 index 96b828a0..00000000 --- a/php/tests/070b.phpt +++ /dev/null @@ -1,308 +0,0 @@ ---TEST-- -Check for alias functions ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- - 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/070c.phpt b/php/tests/070c.phpt deleted file mode 100644 index 7ec3791d..00000000 --- a/php/tests/070c.phpt +++ /dev/null @@ -1,303 +0,0 @@ ---TEST-- -Check for alias functions ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- - 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/071.phpt b/php/tests/071.phpt deleted file mode 100644 index 88f63c9b..00000000 --- a/php/tests/071.phpt +++ /dev/null @@ -1,301 +0,0 @@ ---TEST-- -Check for class methods ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/071b.phpt b/php/tests/071b.phpt deleted file mode 100644 index 944506b9..00000000 --- a/php/tests/071b.phpt +++ /dev/null @@ -1,310 +0,0 @@ ---TEST-- -Check for class methods ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/071c.phpt b/php/tests/071c.phpt deleted file mode 100644 index 86652e70..00000000 --- a/php/tests/071c.phpt +++ /dev/null @@ -1,305 +0,0 @@ ---TEST-- -Check for class methods ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/072.phpt b/php/tests/072.phpt deleted file mode 100644 index 356f4797..00000000 --- a/php/tests/072.phpt +++ /dev/null @@ -1,341 +0,0 @@ ---TEST-- -Check for class methods unpacker ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/072b.phpt b/php/tests/072b.phpt deleted file mode 100644 index 6f9e4905..00000000 --- a/php/tests/072b.phpt +++ /dev/null @@ -1,350 +0,0 @@ ---TEST-- -Check for class methods unpacker ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/072c.phpt b/php/tests/072c.phpt deleted file mode 100644 index 018876fc..00000000 --- a/php/tests/072c.phpt +++ /dev/null @@ -1,345 +0,0 @@ ---TEST-- -Check for class methods unpacker ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/073.phpt b/php/tests/073.phpt deleted file mode 100644 index 2ea89f25..00000000 --- a/php/tests/073.phpt +++ /dev/null @@ -1,342 +0,0 @@ ---TEST-- -Check for class unpacker ---SKIPIF-- -= 0 && - version_compare(PHP_VERSION, '5.3.2') <= 0)) { - echo "skip tests in PHP 5.2.14/5.3.3 or newer"; -} ---FILE-- -pack($variable); - - $unpacker = new MessagePackUnpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/073b.phpt b/php/tests/073b.phpt deleted file mode 100644 index 09bb373e..00000000 --- a/php/tests/073b.phpt +++ /dev/null @@ -1,351 +0,0 @@ ---TEST-- -Check for class unpacker ---SKIPIF-- -= 0) || - (version_compare(PHP_VERSION, '5.3.3') >= 0)) { - echo "skip tests in PHP 5.2.13/5.3.2 or older"; -} -if (version_compare(PHP_VERSION, '5.2.0') < 0) { - echo "skip tests in PHP 5.2 or newer"; -} ---FILE-- -pack($variable); - - $unpacker = new MessagePackUnpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - [%r"?b"?:protected"?%r]=> - int(5) - [%r"?c"?:("Obj":)?private"?%r]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - } -} -OK diff --git a/php/tests/073c.phpt b/php/tests/073c.phpt deleted file mode 100644 index eaa47cc4..00000000 --- a/php/tests/073c.phpt +++ /dev/null @@ -1,346 +0,0 @@ ---TEST-- -Check for class unpacker ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unpacker = new MessagePackUnpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), false); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), false); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), false); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - &array(1) { - [0]=> - string(3) "foo" - } - [1]=> - &array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - &array(1) { - [0]=> - *RECURSION* - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -array(2) { - [0]=> - object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - object(Obj)#%d (3) { - ["a"]=> - int(4) - ["b:protected"]=> - int(5) - ["c:private"]=> - int(6) - } -} -OK -array(2) { - [0]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } - [1]=> - &object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - } -} -OK diff --git a/php/tests/080.phpt b/php/tests/080.phpt deleted file mode 100644 index 6cc9171c..00000000 --- a/php/tests/080.phpt +++ /dev/null @@ -1,301 +0,0 @@ ---TEST-- -disabled php only (ini_set) ---SKIPIF-- ---FILE-- - 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/081.phpt b/php/tests/081.phpt deleted file mode 100644 index 18daa8bc..00000000 --- a/php/tests/081.phpt +++ /dev/null @@ -1,303 +0,0 @@ ---TEST-- -disabled php only for class methods (ini_set) ---SKIPIF-- ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/082.phpt b/php/tests/082.phpt deleted file mode 100644 index b8414abf..00000000 --- a/php/tests/082.phpt +++ /dev/null @@ -1,346 +0,0 @@ ---TEST-- -disabled php only for class methods unpacker (ini_set) ---SKIPIF-- ---FILE-- -pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/083.phpt b/php/tests/083.phpt deleted file mode 100644 index b866ae3f..00000000 --- a/php/tests/083.phpt +++ /dev/null @@ -1,347 +0,0 @@ ---TEST-- -disabled php only for class unpacker (ini_set) ---SKIPIF-- ---FILE-- -pack($variable); - - $unpacker = new MessagePackUnpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/084.phpt b/php/tests/084.phpt deleted file mode 100644 index 7525fbc3..00000000 --- a/php/tests/084.phpt +++ /dev/null @@ -1,301 +0,0 @@ ---TEST-- -disabled php only for class methods (constract) ---SKIPIF-- ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/085.phpt b/php/tests/085.phpt deleted file mode 100644 index 806a9ba3..00000000 --- a/php/tests/085.phpt +++ /dev/null @@ -1,344 +0,0 @@ ---TEST-- -disabled php only for class methods unpacker (constract) ---SKIPIF-- ---FILE-- -pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/086.phpt b/php/tests/086.phpt deleted file mode 100644 index a15d09bc..00000000 --- a/php/tests/086.phpt +++ /dev/null @@ -1,345 +0,0 @@ ---TEST-- -disabled php only for class unpacker (constract) ---SKIPIF-- ---FILE-- -pack($variable); - - $unpacker = new MessagePackUnpacker(false); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/087.phpt b/php/tests/087.phpt deleted file mode 100644 index ede0c30e..00000000 --- a/php/tests/087.phpt +++ /dev/null @@ -1,309 +0,0 @@ ---TEST-- -disabled php only for class methods (set option) ---SKIPIF-- ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - $unserialized = $msgpack->unpack($serialized); - - var_dump($unserialized); - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/088.phpt b/php/tests/088.phpt deleted file mode 100644 index ce51229b..00000000 --- a/php/tests/088.phpt +++ /dev/null @@ -1,352 +0,0 @@ ---TEST-- -disabled php only for class methods unpacker (set option) ---SKIPIF-- ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - $unpacker = $msgpack->unpacker(); - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/089.phpt b/php/tests/089.phpt deleted file mode 100644 index e3a2d7ea..00000000 --- a/php/tests/089.phpt +++ /dev/null @@ -1,365 +0,0 @@ ---TEST-- -disabled php only for class unpacker (set option) ---SKIPIF-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unpacker = new MessagePackUnpacker(); - if (version_compare(PHP_VERSION, '5.1.0') < 0) - { - $unpacker->setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $unpacker->setOption(MessagePack::OPT_PHPONLY, false); - } - - $length = strlen($serialized); - - if (rand(0, 1)) - { - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str = substr($serialized, $i, $len); - - $unpacker->feed($str); - if ($unpacker->execute()) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - $unpacker->reset(); - } - - $i += $len; - } - } - else - { - $str = ""; - $offset = 0; - - for ($i = 0; $i < $length;) - { - $len = rand(1, 10); - $str .= substr($serialized, $i, $len); - - if ($unpacker->execute($str, $offset)) - { - $unserialized = $unpacker->data(); - var_dump($unserialized); - - $unpacker->reset(); - $str = ""; - $offset = 0; - } - - $i += $len; - } - } - - if (!is_bool($test)) - { - echo $unserialized === $variable ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo $test || $unserialized == $variable ? 'OK' : 'ERROR', PHP_EOL; - } -} - -test('null', null); - -test('bool: true', true); -test('bool: false', false); - -test('zero: 0', 0); -test('small: 1', 1); -test('small: -1', -1); -test('medium: 1000', 1000); -test('medium: -1000', -1000); -test('large: 100000', 100000); -test('large: -100000', -100000); - -test('double: 123.456', 123.456); - -test('empty: ""', ""); -test('string: "foobar"', "foobar"); - -test('array: empty', array(), false); -test('array(1, 2, 3)', array(1, 2, 3), false); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), false); - -test('array("foo", "foo", "foo")', array("foo", "foo", "foo"), false); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), false); -test('array("kek" => "lol", "lol" => "kek")', array("kek" => "lol", "lol" => "kek"), false); -test('array("" => "empty")', array("" => "empty"), false); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), false); -test('array(&$a, &$a)', array(&$a, &$a), false); - -$a = array(null); -$b = array(&$a); -$a[0] = &$b; - -test('cyclic', $a, true); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); - -test('array', $a, false); - -class Obj { - public $a; - protected $b; - private $c; - - function __construct($a, $b, $c) { - $this->a = $a; - $this->b = $b; - $this->c = $c; - } -} - -test('object', new Obj(1, 2, 3), true); - -test('object', array(new Obj(1, 2, 3), new Obj(4, 5, 6)), true); - -$o = new Obj(1, 2, 3); - -test('object', array(&$o, &$o), true); ---EXPECTF-- -NULL -OK -bool(true) -OK -bool(false) -OK -int(0) -OK -int(1) -OK -int(-1) -OK -int(1000) -OK -int(-1000) -OK -int(100000) -OK -int(-100000) -OK -float(123.456) -OK -string(0) "" -OK -string(6) "foobar" -OK -array(0) { -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(3) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [2]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -array(3) { - [0]=> - string(3) "foo" - [1]=> - string(3) "foo" - [2]=> - string(3) "foo" -} -OK -array(2) { - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -array(2) { - ["kek"]=> - string(3) "lol" - ["lol"]=> - string(3) "kek" -} -OK -array(1) { - [""]=> - string(5) "empty" -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(2) { - [0]=> - array(1) { - [0]=> - string(3) "foo" - } - [1]=> - array(1) { - [0]=> - string(3) "foo" - } -} -OK -array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - array(1) { - [0]=> - NULL - } - } - } - } -} -OK -array(2) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } -} -OK -array(2) { - [0]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [1]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } -} -OK diff --git a/php/tests/090.phpt b/php/tests/090.phpt deleted file mode 100644 index b2a1224c..00000000 --- a/php/tests/090.phpt +++ /dev/null @@ -1,575 +0,0 @@ ---TEST-- -unpack of object converter (string) ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/090b.phpt b/php/tests/090b.phpt deleted file mode 100644 index 874f0987..00000000 --- a/php/tests/090b.phpt +++ /dev/null @@ -1,563 +0,0 @@ ---TEST-- -unpack of object converter (string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/091.phpt b/php/tests/091.phpt deleted file mode 100644 index 33bb875e..00000000 --- a/php/tests/091.phpt +++ /dev/null @@ -1,577 +0,0 @@ ---TEST-- -unpack of object converter (object) ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/091b.phpt b/php/tests/091b.phpt deleted file mode 100644 index c917b136..00000000 --- a/php/tests/091b.phpt +++ /dev/null @@ -1,563 +0,0 @@ ---TEST-- -unpack of object converter (object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/092.phpt b/php/tests/092.phpt deleted file mode 100644 index 9c5dd1a4..00000000 --- a/php/tests/092.phpt +++ /dev/null @@ -1,442 +0,0 @@ ---TEST-- -unpack of object converter (string: php_only=0) ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/092b.phpt b/php/tests/092b.phpt deleted file mode 100644 index 0e99a715..00000000 --- a/php/tests/092b.phpt +++ /dev/null @@ -1,430 +0,0 @@ ---TEST-- -unpack of object converter (string: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/093.phpt b/php/tests/093.phpt deleted file mode 100644 index f66511ef..00000000 --- a/php/tests/093.phpt +++ /dev/null @@ -1,444 +0,0 @@ ---TEST-- -unpack of object converter (object: php_only=0) ---SKIPIF-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/093b.phpt b/php/tests/093b.phpt deleted file mode 100644 index c5acd3fe..00000000 --- a/php/tests/093b.phpt +++ /dev/null @@ -1,430 +0,0 @@ ---TEST-- -unpack of object converter (object: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/094.phpt b/php/tests/094.phpt deleted file mode 100644 index a0a40d6d..00000000 --- a/php/tests/094.phpt +++ /dev/null @@ -1,578 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (string) ---SKIPIF-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/094b.phpt b/php/tests/094b.phpt deleted file mode 100644 index 5d6ade54..00000000 --- a/php/tests/094b.phpt +++ /dev/null @@ -1,566 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/095.phpt b/php/tests/095.phpt deleted file mode 100644 index a0feafca..00000000 --- a/php/tests/095.phpt +++ /dev/null @@ -1,580 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (object) ---SKIPIF-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/095b.phpt b/php/tests/095b.phpt deleted file mode 100644 index 6a10402b..00000000 --- a/php/tests/095b.phpt +++ /dev/null @@ -1,566 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/096.phpt b/php/tests/096.phpt deleted file mode 100644 index 06ff2152..00000000 --- a/php/tests/096.phpt +++ /dev/null @@ -1,445 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (string: php_only=0) ---SKIPIF-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/096b.phpt b/php/tests/096b.phpt deleted file mode 100644 index 8379614c..00000000 --- a/php/tests/096b.phpt +++ /dev/null @@ -1,433 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (string: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/097.phpt b/php/tests/097.phpt deleted file mode 100644 index 055a5e47..00000000 --- a/php/tests/097.phpt +++ /dev/null @@ -1,447 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (object: php_only=0) ---SKIPIF-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/097b.phpt b/php/tests/097b.phpt deleted file mode 100644 index 8f516fae..00000000 --- a/php/tests/097b.phpt +++ /dev/null @@ -1,433 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (object: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/098.phpt b/php/tests/098.phpt deleted file mode 100644 index 23f34273..00000000 --- a/php/tests/098.phpt +++ /dev/null @@ -1,445 +0,0 @@ ---TEST-- -unpack of object converter: class unpack (string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/098b.phpt b/php/tests/098b.phpt deleted file mode 100644 index 1e328872..00000000 --- a/php/tests/098b.phpt +++ /dev/null @@ -1,440 +0,0 @@ ---TEST-- -unpack of object converter: class unpack (string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/099.phpt b/php/tests/099.phpt deleted file mode 100644 index 01da2ac3..00000000 --- a/php/tests/099.phpt +++ /dev/null @@ -1,584 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (string) ---SKIPIF-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/099b.phpt b/php/tests/099b.phpt deleted file mode 100644 index b44e90fd..00000000 --- a/php/tests/099b.phpt +++ /dev/null @@ -1,572 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), 'Obj', new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), 'Obj', new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), 'Obj', new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), 'Obj', new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/100.phpt b/php/tests/100.phpt deleted file mode 100644 index 0b825637..00000000 --- a/php/tests/100.phpt +++ /dev/null @@ -1,586 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (object) ---SKIPIF-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - [%r"?B"?:protected"?%r]=> - int(5) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - [%r"?B"?:protected"?%r]=> - int(2) - [%r"?C"?:("Obj2":)?private"?%r]=> - int(3) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/100b.phpt b/php/tests/100b.phpt deleted file mode 100644 index d78da002..00000000 --- a/php/tests/100b.phpt +++ /dev/null @@ -1,572 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, &$a)', array(&$a, &$a), new Obj(), new Obj($a, $a, null)); - -test('array(&$a, $a)', array($a, &$a), new Obj(), new Obj($a, $a, null)); -test('array(&$a, $a)', array(&$a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj($o)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj($o1, $o2)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, &$o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array(&$o, $o), new Obj(), new Obj($o, $o)); - -$o = new Obj2(1, 2, 3); -test('object', array($o, &$o), new Obj(), new Obj($o, $o)); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(4) - ["B:protected"]=> - int(5) - ["C:private"]=> - int(6) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["b:protected"]=> - &object(Obj2)#%d (3) { - ["A"]=> - int(1) - ["B:protected"]=> - int(2) - ["C:private"]=> - int(3) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/101.phpt b/php/tests/101.phpt deleted file mode 100644 index c6f09d5d..00000000 --- a/php/tests/101.phpt +++ /dev/null @@ -1,451 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (string: php_only=0) ---SKIPIF-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/101b.phpt b/php/tests/101b.phpt deleted file mode 100644 index d7843b7a..00000000 --- a/php/tests/101b.phpt +++ /dev/null @@ -1,439 +0,0 @@ ---TEST-- -unpack of object converter : class unpack (string: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/102.phpt b/php/tests/102.phpt deleted file mode 100644 index c91eba58..00000000 --- a/php/tests/102.phpt +++ /dev/null @@ -1,453 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (object: php_only=0) ---SKIPIF-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -$object = new Obj(); - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), new Obj()); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/102b.phpt b/php/tests/102b.phpt deleted file mode 100644 index 1fec6eef..00000000 --- a/php/tests/102b.phpt +++ /dev/null @@ -1,439 +0,0 @@ ---TEST-- -unpack of object converter : class unpacker (object: php_only=0) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, new Obj(), new Obj(null, null, null)); - -test('bool: true', true, new Obj(), new Obj(true, null, null)); -test('bool: false', false, new Obj(), new Obj(false, null, null)); - -test('zero: 0', 0, new Obj(), new Obj(0, null, null)); -test('small: 1', 1, new Obj(), new Obj(1, null, null)); -test('small: -1', -1, new Obj(), new Obj(-1, null, null)); -test('medium: 1000', 1000, new Obj(), new Obj(1000, null, null)); -test('medium: -1000', -1000, new Obj(), new Obj(-1000, null, null)); -test('large: 100000', 100000, new Obj(), new Obj(100000, null, null)); -test('large: -100000', -100000, new Obj(), new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, new Obj(), new Obj(123.456, null, null)); - -test('empty: ""', "", new Obj(), new Obj("", null, null)); -test('string: "foobar"', "foobar", new Obj(), new Obj("foobar", null, null)); - -test('array: empty', array(), new Obj(), new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), new Obj()); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), new Obj(), new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), new Obj(), new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), new Obj(), new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), new Obj(), new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), new Obj(), new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), new Obj(), new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), new Obj(), new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, new Obj(), new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, new Obj(), new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), new Obj(), new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/103.phpt b/php/tests/103.phpt deleted file mode 100644 index 60b3da15..00000000 --- a/php/tests/103.phpt +++ /dev/null @@ -1,451 +0,0 @@ ---TEST-- -unpack of object converter: class unpacker (string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); -test('array("" => "empty")', array("" => "empty"), 'Obj'); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - [%r"?b"?:protected"?%r]=> - string(6) "foobar" - [%r"?c"?:("Obj":)?private"?%r]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (4) { - ["a"]=> - NULL - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - [""]=> - string(5) "empty" -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?b"?:protected"?%r]=> - array(1) { - [0]=> - string(3) "foo" - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - [%r"?b"?:protected"?%r]=> - NULL - [%r"?c"?:("Obj":)?private"?%r]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - [%r"?b"?:protected"?%r]=> - int(2) - [%r"?c"?:("Obj":)?private"?%r]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - [%r"?b"?:protected"?%r]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - [%r"?c"?:("Obj":)?private"?%r]=> - NULL -} -OK diff --git a/php/tests/103b.phpt b/php/tests/103b.phpt deleted file mode 100644 index fc875b97..00000000 --- a/php/tests/103b.phpt +++ /dev/null @@ -1,446 +0,0 @@ ---TEST-- -unpack of object converter: class unpacker (string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = null; - $unpacker = $msgpack->unpacker(); - if ($unpacker->execute($serialized)) - { - $unserialized = $unpacker->data($object); - } - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class Obj -{ - public $a; - protected $b; - private $c; - - public function __construct($a = null, $b = null, $c = null, $d = null) - { - $this->a = $a; - $this->b = $b; - $this->c = $c; - if (is_array($d)) - { - foreach ($d as $key => $val) - { - $this->{$key} = $val; - } - } - } -} - -test('null', null, 'Obj', new Obj(null, null, null)); - -test('bool: true', true, 'Obj', new Obj(true, null, null)); -test('bool: false', false, 'Obj', new Obj(false, null, null)); - -test('zero: 0', 0, 'Obj', new Obj(0, null, null)); -test('small: 1', 1, 'Obj', new Obj(1, null, null)); -test('small: -1', -1, 'Obj', new Obj(-1, null, null)); -test('medium: 1000', 1000, 'Obj', new Obj(1000, null, null)); -test('medium: -1000', -1000, 'Obj', new Obj(-1000, null, null)); -test('large: 100000', 100000, 'Obj', new Obj(100000, null, null)); -test('large: -100000', -100000, 'Obj', new Obj(-100000, null, null)); - -test('double: 123.456', 123.456, 'Obj', new Obj(123.456, null, null)); - -test('empty: ""', "", 'Obj', new Obj("", null, null)); -test('string: "foobar"', "foobar", 'Obj', new Obj("foobar", null, null)); - -test('array: empty', array(), 'Obj', new Obj(null, null, null)); -test('array(1, 2, 3)', array(1, 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(array(1, 2, 3), arr...', array(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9)), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6), array(7, 8, 9))); -test('array(1, 2, 3, 4)', array(1, 2, 3, 4), 'Obj'); - -test('array("foo", "foobar", "foohoge")', array("foo", "foobar", "hoge"), 'Obj', new Obj("foo", "foobar", "hoge")); -test('array("a" => 1, "b" => 2))', array("a" => 1, "b" => 2), 'Obj', new Obj(1, 2, null)); -test('array("one" => 1, "two" => 2))', array("one" => 1, "two" => 2), 'Obj', new Obj(null, null, null, array("one" => 1, "two" => 2))); - -test('array("a" => 1, "b" => 2, 3))', array("a" => 1, "b" => 2, 3), 'Obj', new Obj(1, 2, 3)); -test('array(3, "a" => 1, "b" => 2))', array(3, "a" => 1, "b" => 2), 'Obj', new Obj(1, 2, 3)); -test('array("a" => 1, 3, "b" => 2))', array("a" => 1, 3, "b" => 2), 'Obj', new Obj(1, 2, 3)); - -$a = array('foo'); -test('array($a, $a)', array($a, $a), 'Obj', new Obj($a, $a, null)); - -$a = array( - 'a' => array( - 'b' => 'c', - 'd' => 'e' - ), - 'f' => array( - 'g' => 'h' - ) - ); -test('array', $a, 'Obj', new Obj(null, null, null, $a)); - -$o = new Obj(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -class Obj2 { - public $A; - protected $B; - private $C; - - function __construct($a, $b, $c) { - $this->A = $a; - $this->B = $b; - $this->C = $c; - } -} - -$o = new Obj2(1, 2, 3); -test('object', $o, 'Obj', new Obj(1, 2, 3)); - -$o1 = new Obj2(1, 2, 3); -$o2 = new Obj2(4, 5, 6); -test('object', array($o1, $o2), 'Obj', new Obj(array(1, 2, 3), array(4, 5, 6))); - ---EXPECTF-- -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(true) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - bool(false) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(0) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-1000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(-100000) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - float(123.456) - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(0) "" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - string(6) "foobar" - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - array(3) { - [0]=> - int(7) - [1]=> - int(8) - [2]=> - int(9) - } -} -OK -object(Obj)#%d (4) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) - [3]=> - int(4) -} -SKIP -object(Obj)#%d (3) { - ["a"]=> - string(3) "foo" - ["b:protected"]=> - string(6) "foobar" - ["c:private"]=> - string(4) "hoge" -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (5) { - ["a"]=> - NULL - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["one"]=> - int(1) - ["two"]=> - int(2) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["b:protected"]=> - array(1) { - [0]=> - string(3) "foo" - } - ["c:private"]=> - NULL -} -OK -object(Obj)#%d (4) { - ["a"]=> - array(2) { - ["b"]=> - string(1) "c" - ["d"]=> - string(1) "e" - } - ["b:protected"]=> - NULL - ["c:private"]=> - NULL - ["f"]=> - array(1) { - ["g"]=> - string(1) "h" - } -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - int(1) - ["b:protected"]=> - int(2) - ["c:private"]=> - int(3) -} -OK -object(Obj)#%d (3) { - ["a"]=> - array(3) { - [0]=> - int(1) - [1]=> - int(2) - [2]=> - int(3) - } - ["b:protected"]=> - array(3) { - [0]=> - int(4) - [1]=> - int(5) - [2]=> - int(6) - } - ["c:private"]=> - NULL -} -OK diff --git a/php/tests/104.phpt b/php/tests/104.phpt deleted file mode 100644 index 216baa33..00000000 --- a/php/tests/104.phpt +++ /dev/null @@ -1,81 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: string) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/104b.phpt b/php/tests/104b.phpt deleted file mode 100644 index c46d9453..00000000 --- a/php/tests/104b.phpt +++ /dev/null @@ -1,81 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/105.phpt b/php/tests/105.phpt deleted file mode 100644 index dcd2e08f..00000000 --- a/php/tests/105.phpt +++ /dev/null @@ -1,81 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: object) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/105b.phpt b/php/tests/105b.phpt deleted file mode 100644 index e7a96b13..00000000 --- a/php/tests/105b.phpt +++ /dev/null @@ -1,81 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/106.phpt b/php/tests/106.phpt deleted file mode 100644 index dc9a95be..00000000 --- a/php/tests/106.phpt +++ /dev/null @@ -1,87 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (string) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/106b.phpt b/php/tests/106b.phpt deleted file mode 100644 index 2ebdcd15..00000000 --- a/php/tests/106b.phpt +++ /dev/null @@ -1,88 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/107.phpt b/php/tests/107.phpt deleted file mode 100644 index 14868324..00000000 --- a/php/tests/107.phpt +++ /dev/null @@ -1,88 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (object) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/107b.phpt b/php/tests/107b.phpt deleted file mode 100644 index b8803a62..00000000 --- a/php/tests/107b.phpt +++ /dev/null @@ -1,88 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/108.phpt b/php/tests/108.phpt deleted file mode 100644 index bf21d880..00000000 --- a/php/tests/108.phpt +++ /dev/null @@ -1,93 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: string) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/108b.phpt b/php/tests/108b.phpt deleted file mode 100644 index c1fb5e08..00000000 --- a/php/tests/108b.phpt +++ /dev/null @@ -1,93 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/109.phpt b/php/tests/109.phpt deleted file mode 100644 index 00c74216..00000000 --- a/php/tests/109.phpt +++ /dev/null @@ -1,92 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: object) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array(new MyObj()); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/109b.phpt b/php/tests/109b.phpt deleted file mode 100644 index 2b62a3cf..00000000 --- a/php/tests/109b.phpt +++ /dev/null @@ -1,93 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/110.phpt b/php/tests/110.phpt deleted file mode 100644 index 8c8131a8..00000000 --- a/php/tests/110.phpt +++ /dev/null @@ -1,114 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: string) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/110b.phpt b/php/tests/110b.phpt deleted file mode 100644 index 2924e767..00000000 --- a/php/tests/110b.phpt +++ /dev/null @@ -1,114 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/111.phpt b/php/tests/111.phpt deleted file mode 100644 index aeb3f60f..00000000 --- a/php/tests/111.phpt +++ /dev/null @@ -1,114 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: object) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/111b.phpt b/php/tests/111b.phpt deleted file mode 100644 index 39e124fa..00000000 --- a/php/tests/111b.phpt +++ /dev/null @@ -1,114 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/112.phpt b/php/tests/112.phpt deleted file mode 100644 index 1cdaf45d..00000000 --- a/php/tests/112.phpt +++ /dev/null @@ -1,144 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: string) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/112b.phpt b/php/tests/112b.phpt deleted file mode 100644 index af7c0cea..00000000 --- a/php/tests/112b.phpt +++ /dev/null @@ -1,144 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/113.phpt b/php/tests/113.phpt deleted file mode 100644 index d4277354..00000000 --- a/php/tests/113.phpt +++ /dev/null @@ -1,144 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: object) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/113b.phpt b/php/tests/113b.phpt deleted file mode 100644 index 1b792b97..00000000 --- a/php/tests/113b.phpt +++ /dev/null @@ -1,144 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/114.phpt b/php/tests/114.phpt deleted file mode 100644 index d325ec54..00000000 --- a/php/tests/114.phpt +++ /dev/null @@ -1,166 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array) ---SKIPIF-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/114b.phpt b/php/tests/114b.phpt deleted file mode 100644 index 790fe964..00000000 --- a/php/tests/114b.phpt +++ /dev/null @@ -1,166 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/115.phpt b/php/tests/115.phpt deleted file mode 100644 index 67557719..00000000 --- a/php/tests/115.phpt +++ /dev/null @@ -1,82 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/115b.phpt b/php/tests/115b.phpt deleted file mode 100644 index fd8569b3..00000000 --- a/php/tests/115b.phpt +++ /dev/null @@ -1,89 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/116.phpt b/php/tests/116.phpt deleted file mode 100644 index b2404aa1..00000000 --- a/php/tests/116.phpt +++ /dev/null @@ -1,82 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/116b.phpt b/php/tests/116b.phpt deleted file mode 100644 index 79c6e1eb..00000000 --- a/php/tests/116b.phpt +++ /dev/null @@ -1,89 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - - function __construct() - { - $this->data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/117.phpt b/php/tests/117.phpt deleted file mode 100644 index 15696099..00000000 --- a/php/tests/117.phpt +++ /dev/null @@ -1,88 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/117b.phpt b/php/tests/117b.phpt deleted file mode 100644 index 910eebf4..00000000 --- a/php/tests/117b.phpt +++ /dev/null @@ -1,96 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/118.phpt b/php/tests/118.phpt deleted file mode 100644 index c73bde80..00000000 --- a/php/tests/118.phpt +++ /dev/null @@ -1,89 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (object: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/118b.phpt b/php/tests/118b.phpt deleted file mode 100644 index 2a93617e..00000000 --- a/php/tests/118b.phpt +++ /dev/null @@ -1,96 +0,0 @@ ---TEST-- -unpack of template converter: class unpacker (object: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/119.phpt b/php/tests/119.phpt deleted file mode 100644 index ff4011a6..00000000 --- a/php/tests/119.phpt +++ /dev/null @@ -1,94 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/119b.phpt b/php/tests/119b.phpt deleted file mode 100644 index bf3bc204..00000000 --- a/php/tests/119b.phpt +++ /dev/null @@ -1,101 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/120.phpt b/php/tests/120.phpt deleted file mode 100644 index b9e196ec..00000000 --- a/php/tests/120.phpt +++ /dev/null @@ -1,93 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array(new MyObj()); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/120b.phpt b/php/tests/120b.phpt deleted file mode 100644 index a2ceb91c..00000000 --- a/php/tests/120b.phpt +++ /dev/null @@ -1,101 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/121.phpt b/php/tests/121.phpt deleted file mode 100644 index 41fbce0b..00000000 --- a/php/tests/121.phpt +++ /dev/null @@ -1,115 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/121b.phpt b/php/tests/121b.phpt deleted file mode 100644 index f9a957bc..00000000 --- a/php/tests/121b.phpt +++ /dev/null @@ -1,122 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/122.phpt b/php/tests/122.phpt deleted file mode 100644 index ef9b103a..00000000 --- a/php/tests/122.phpt +++ /dev/null @@ -1,115 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/122b.phpt b/php/tests/122b.phpt deleted file mode 100644 index 21f29507..00000000 --- a/php/tests/122b.phpt +++ /dev/null @@ -1,122 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/123.phpt b/php/tests/123.phpt deleted file mode 100644 index 477150d6..00000000 --- a/php/tests/123.phpt +++ /dev/null @@ -1,145 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/123b.phpt b/php/tests/123b.phpt deleted file mode 100644 index 799d3481..00000000 --- a/php/tests/123b.phpt +++ /dev/null @@ -1,152 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: string: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/124.phpt b/php/tests/124.phpt deleted file mode 100644 index f45a2433..00000000 --- a/php/tests/124.phpt +++ /dev/null @@ -1,145 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/124b.phpt b/php/tests/124b.phpt deleted file mode 100644 index a47eb19d..00000000 --- a/php/tests/124b.phpt +++ /dev/null @@ -1,152 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: object: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/125.phpt b/php/tests/125.phpt deleted file mode 100644 index 142cd40c..00000000 --- a/php/tests/125.phpt +++ /dev/null @@ -1,167 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: OPT_PHPONLY=false) ---SKIPIF-- -setOption(MessagePack::OPT_PHPONLY, false); - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/125b.phpt b/php/tests/125b.phpt deleted file mode 100644 index 31e43a89..00000000 --- a/php/tests/125b.phpt +++ /dev/null @@ -1,174 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array: OPT_PHPONLY=false) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -setOption(MESSAGEPACK_OPT_PHPONLY, false); - } - else - { - $msgpack->setOption(MessagePack::OPT_PHPONLY, false); - } - - $serialized = $msgpack->pack($variable); - - $unserialized = $msgpack->unpack($serialized, $object); - - var_dump($unserialized); - if ($result) - { - echo $unserialized == $result ? 'OK' : 'ERROR', PHP_EOL; - } - else - { - echo 'SKIP', PHP_EOL; - } -} - -class MyObj -{ - private $data = null; - private $priv = "privdata"; - public $pdata = null; - public $subary = null; - - function __construct() - { - $this->data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/126.phpt b/php/tests/126.phpt deleted file mode 100644 index 351c4f1a..00000000 --- a/php/tests/126.phpt +++ /dev/null @@ -1,78 +0,0 @@ ---TEST-- -unpack of template converter (array: string) ---SKIPIF-- -data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/126b.phpt b/php/tests/126b.phpt deleted file mode 100644 index 5bc6dd06..00000000 --- a/php/tests/126b.phpt +++ /dev/null @@ -1,78 +0,0 @@ ---TEST-- -unpack of template converter (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array("MyObj"); - -test("object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/127.phpt b/php/tests/127.phpt deleted file mode 100644 index 70c435b5..00000000 --- a/php/tests/127.phpt +++ /dev/null @@ -1,78 +0,0 @@ ---TEST-- -unpack of template converter (array: object) ---SKIPIF-- -data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/127b.phpt b/php/tests/127b.phpt deleted file mode 100644 index fac7585a..00000000 --- a/php/tests/127b.phpt +++ /dev/null @@ -1,78 +0,0 @@ ---TEST-- -unpack of template converter (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata0"; - -$obj2 = new MyObj(); -$obj2->pdata = "pubdata1"; - -$ary = array($obj, $obj2); - -$tpl = array(new MyObj()); - -test("object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - } - [1]=> - object(MyObj)#%d (3) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - } -} -OK diff --git a/php/tests/128.phpt b/php/tests/128.phpt deleted file mode 100644 index 40d7e7cc..00000000 --- a/php/tests/128.phpt +++ /dev/null @@ -1,84 +0,0 @@ ---TEST-- -unpack of template converter (string) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/128b.phpt b/php/tests/128b.phpt deleted file mode 100644 index fbdabf39..00000000 --- a/php/tests/128b.phpt +++ /dev/null @@ -1,85 +0,0 @@ ---TEST-- -unpack of template converter (string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = "MyObj"; - -test("recursive object /w string", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/129.phpt b/php/tests/129.phpt deleted file mode 100644 index 897e766b..00000000 --- a/php/tests/129.phpt +++ /dev/null @@ -1,85 +0,0 @@ ---TEST-- -unpack of template converter (object) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/129b.phpt b/php/tests/129b.phpt deleted file mode 100644 index fa69ecf6..00000000 --- a/php/tests/129b.phpt +++ /dev/null @@ -1,85 +0,0 @@ ---TEST-- -unpack of template converter (object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$tpl = new MyObj(); - -test("recursive object /w instance", $obj, $tpl, $obj); - ---EXPECTF-- -object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } -} -OK diff --git a/php/tests/130.phpt b/php/tests/130.phpt deleted file mode 100644 index 36779e7e..00000000 --- a/php/tests/130.phpt +++ /dev/null @@ -1,90 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: (array: string) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/130b.phpt b/php/tests/130b.phpt deleted file mode 100644 index dd96cbd3..00000000 --- a/php/tests/130b.phpt +++ /dev/null @@ -1,90 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/131.phpt b/php/tests/131.phpt deleted file mode 100644 index d0f46346..00000000 --- a/php/tests/131.phpt +++ /dev/null @@ -1,89 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: (array: object) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj { - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array(new MyObj()); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/131b.phpt b/php/tests/131b.phpt deleted file mode 100644 index e65350bf..00000000 --- a/php/tests/131b.phpt +++ /dev/null @@ -1,90 +0,0 @@ ---TEST-- -unpack of template converter: multiple class: (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj = new MyObj(); -$obj->pdata = "pubdata"; -$obj->subary->subpdata = "subpubdata"; - -$ary = array($obj); - -$tpl = array("MyObj"); - -test("recursive object with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(1) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(7) "pubdata" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpubdata" - } - } -} -OK diff --git a/php/tests/132.phpt b/php/tests/132.phpt deleted file mode 100644 index fc38a82f..00000000 --- a/php/tests/132.phpt +++ /dev/null @@ -1,111 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: (array: string) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/132b.phpt b/php/tests/132b.phpt deleted file mode 100644 index 7ddb9e72..00000000 --- a/php/tests/132b.phpt +++ /dev/null @@ -1,111 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/133.phpt b/php/tests/133.phpt deleted file mode 100644 index 7452a318..00000000 --- a/php/tests/133.phpt +++ /dev/null @@ -1,111 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: (array: object) ---SKIPIF-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/133b.phpt b/php/tests/133b.phpt deleted file mode 100644 index aa41971a..00000000 --- a/php/tests/133b.phpt +++ /dev/null @@ -1,111 +0,0 @@ ---TEST-- -unpack of template converter: multiple variable: (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = new SubObj(); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary->subpdata = "subpubdata0"; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary->subpdata = "subpubdata1"; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata0" - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - } -} -OK diff --git a/php/tests/134.phpt b/php/tests/134.phpt deleted file mode 100644 index 587e1486..00000000 --- a/php/tests/134.phpt +++ /dev/null @@ -1,141 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: (array: string) ---SKIPIF-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/134b.phpt b/php/tests/134b.phpt deleted file mode 100644 index d243496f..00000000 --- a/php/tests/134b.phpt +++ /dev/null @@ -1,141 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: (array: string) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array("MyObj"); - -test("recursive object list with object list /w string", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/135.phpt b/php/tests/135.phpt deleted file mode 100644 index 3d36482f..00000000 --- a/php/tests/135.phpt +++ /dev/null @@ -1,141 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: (array: object) ---SKIPIF-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - [%r"?data"?:("MyObj":)?private"?%r]=> - string(8) "datadata" - [%r"?priv"?:("MyObj":)?private"?%r]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - [%r"?subdata"?:("SubObj":)?private"?%r]=> - string(11) "subdatadata" - [%r"?subpriv"?:("SubObj":)?private"?%r]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/135b.phpt b/php/tests/135b.phpt deleted file mode 100644 index 4dd42765..00000000 --- a/php/tests/135b.phpt +++ /dev/null @@ -1,141 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: (array: object) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array(new MyObj()); - -test("recursive object list with object list /w instance", $ary, $tpl, $ary); - ---EXPECTF-- -array(2) { - [0]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - object(MyObj)#%d (4) { - ["data:private"]=> - string(8) "datadata" - ["priv:private"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - object(SubObj)#%d (3) { - ["subdata:private"]=> - string(11) "subdatadata" - ["subpriv:private"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/136.phpt b/php/tests/136.phpt deleted file mode 100644 index 2f2ef5d7..00000000 --- a/php/tests/136.phpt +++ /dev/null @@ -1,163 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: (array) ---SKIPIF-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK diff --git a/php/tests/136b.phpt b/php/tests/136b.phpt deleted file mode 100644 index 3b1d5b20..00000000 --- a/php/tests/136b.phpt +++ /dev/null @@ -1,163 +0,0 @@ ---TEST-- -unpack of template converter: multiple class/variable: class unpacker (array) ---SKIPIF-- -= 0) { - echo "skip tests in PHP 5.1 or older"; -} ---FILE-- -data = "datadata"; - $this->subary = array(new SubObj()); - } -} - -class SubObj -{ - private $subdata = null; - private $subpriv = "subprivdata"; - public $subpdata = null; - - function __construct() - { - $this->subdata = "subdatadata"; - } -} - -$arySubObj = array( - "subdata" => "subdatadata", - "subpriv" => "subprivdata", - "subpdata" => null, -); - -$aryMyObj = array( - "data" => "datadata", - "priv" => "privdata", - "pdata" => null, - "subary" => array($arySubObj), -); - -$obj0 = new MyObj(); -$obj0->pdata = "pubdata0"; -$obj0->subary[0]->subpdata = "subpubdata00"; -$subobj01 = new SubObj(); -$subobj01->subpdata = "subpdata01"; -$obj0->subary[1] = $subobj01; -$obj1 = new MyObj(); -$obj1->pdata = "pubdata1"; -$obj1->subary[0]->subpdata = "subpubdata1"; -$subobj11 = new SubObj(); -$subobj11->subpdata = "subpdata11"; -$obj1->subary[1] = $subobj11; - -$ary = array($obj0, $obj1); - -$tpl = array($aryMyObj); -$resary = array($aryMyObj, $aryMyObj); -$resary[0]["pdata"] = "pubdata0"; -$resary[0]["subary"][] = $arySubObj; -$resary[0]["subary"][0]["subpdata"] = "subpubdata00"; -$resary[0]["subary"][1]["subpdata"] = "subpdata01"; -$resary[1]["subary"][] = $arySubObj; -$resary[1]["pdata"] = "pubdata1"; -$resary[1]["subary"][0]["subpdata"] = "subpubdata1"; -$resary[1]["subary"][1]["subpdata"] = "subpdata11"; - -test("recursive object list to associative array list", $ary, $tpl, $resary); - ---EXPECTF-- -array(2) { - [0]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata0" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(12) "subpubdata00" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata01" - } - } - } - [1]=> - array(4) { - ["data"]=> - string(8) "datadata" - ["priv"]=> - string(8) "privdata" - ["pdata"]=> - string(8) "pubdata1" - ["subary"]=> - array(2) { - [0]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(11) "subpubdata1" - } - [1]=> - array(3) { - ["subdata"]=> - string(11) "subdatadata" - ["subpriv"]=> - string(11) "subprivdata" - ["subpdata"]=> - string(10) "subpdata11" - } - } - } -} -OK