diff options
Diffstat (limited to 'php/tests/test_pack.phpt')
| -rw-r--r-- | php/tests/test_pack.phpt | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/php/tests/test_pack.phpt b/php/tests/test_pack.phpt new file mode 100644 index 0000000..595e4d0 --- /dev/null +++ b/php/tests/test_pack.phpt @@ -0,0 +1,169 @@ +--TEST-- +Test msgpack_pack() function : basic functionality +--SKIPIF-- +<?php if (!extension_loaded("msgpack")) print "skip"; ?> +--FILE-- +<?php +echo "*** Testing msgpack_pack() : basic functionality ***\n"; + + +function create_map($num) +{ + $data = array(); + for($i=0; $i<=$num; $i++) + $data[$i+1] = $i; + return $data; +} + +$inputs = array ( + // null +/*1*/ null, + NULL, + + // boolean +/*3*/ false, + FALSE, + true, + TRUE, + + // zero +/*7*/ 0, + + // positive fixnum +/*8*/ 1, + (1<<6), + (1<<7)-1, + + // positive int 8 +/*11*/ (1<<7), + (1<<8)-1, + + // positive int 16 +/*13*/ (1<<8), + (1<<16)-1, + + // positive int 32 +/*15*/ (1<<16), + (1<<32)-1, + + // positive int 64 +/*17*/ (1<<32), + (1<<64)-1, + + // negative fixnum +/*19*/ -1, + -((1<<5)-1), + -(1<<5), + + // negative int 8 +/*22*/ -((1<<5)+1), + -(1<<7), + + // negative int 16 +/*24*/ -((1<<7)+1), + -(1<<15), + + //negative int 32 +/*26*/ -((1<<15)+1), + -(1<<31), + + // negative int 64 +/*28*/ -((1<<31)+1), + -(1<<63), + + // double +/*30*/ 1.0, + 0.1, + -0.1, + -1.0, + + // fixraw +/*34*/ "", + str_repeat(" ", (1<<5)-1), + + // raw 16 +/*36*/ str_repeat(" ", (1<<5)), + //str_repeat(" ", (1<<16)-1), + + // raw 32 +/*38*/ //str_repeat(" ", (1<<16)), + //str_repeat(" ", (1<<32)-1), // memory error + + // fixarraw +/*39*/ array(), + range(0, (1<<4)-1), + + // array 16 +/*41*/ range(0, (1<<4)), + //range(0, (1<<16)-1), + + // array 32 +/*43*/ //range(0, (1<<16)), + //range(0, (1<<32)-1), // memory error + + // fixmap + //array(), +/*44*/ //create_map((1<<4)-1), + + // map 16 +/*45*/ //create_map((1<<4)), + //create_map((1<<16)-1), + + // map 32 +/*47*/ //create_map((1<<16)) + //create_map((1<<32)-1) // memory error +); + +$count = 1; +foreach($inputs as $input) { + echo "-- Iteration $count --\n"; + $str = unpack('H*', msgpack_pack($input)); + var_dump("0x".$str[1]); + $count ++; +} + +?> +===DONE=== +--EXPECT-- +*** Testing msgpack_pack() : basic functionality *** +-- Iteration 1 -- +string(4) "0xc0" +-- Iteration 2 -- +string(4) "0xc0" +-- Iteration 3 -- +string(4) "0xc2" +-- Iteration 4 -- +string(4) "0xc2" +-- Iteration 5 -- +string(4) "0xc3" +-- Iteration 6 -- +string(4) "0xc3" +-- Iteration 7 -- +string(4) "0x00" +-- Iteration 8 -- +string(4) "0x7f" +-- Iteration 9 -- +string(6) "0xcc80" +-- Iteration 10 -- +string(8) "0xcd0100" +-- Iteration 11 -- +string(4) "0xff" +-- Iteration 12 -- +string(6) "0xd0df" +-- Iteration 13 -- +string(8) "0xd1ff7f" +-- Iteration 14 -- +string(8) "0x810101" +-- Iteration 15 -- +string(20) "0xcb3ff0000000000000" +-- Iteration 16 -- +string(4) "0x90" +-- Iteration 17 -- +string(34) "0x9f000102030405060708090a0b0c0d0e" +-- Iteration 18 -- +string(40) "0xdc0010000102030405060708090a0b0c0d0e0f" +-- Iteration 19 -- +string(64) "0x8f0100020103020403050406050706080709080a090b0a0c0b0d0c0e0d0f0e" +-- Iteration 20 -- +string(72) "0xde00100100020103020403050406050706080709080a090b0a0c0b0d0c0e0d0f0e100f" +===DONE=== |
