mirror of
https://github.com/php/php-src.git
synced 2024-09-23 10:57:26 +00:00
pack()/unpack() tests
This commit is contained in:
parent
0d338f463c
commit
714abb7ea1
379
ext/standard/tests/strings/pack.phpt
Normal file
379
ext/standard/tests/strings/pack.phpt
Normal file
@ -0,0 +1,379 @@
|
||||
--TEST--
|
||||
Generic pack()/unpack() tests
|
||||
--FILE--
|
||||
<?php
|
||||
print_r(unpack("A", pack("A", "hello world")));
|
||||
print_r(unpack("A*", pack("A*", "hello world")));
|
||||
echo '"'.pack("A9", "hello").'"';
|
||||
echo "\n";
|
||||
|
||||
print_r(unpack("C", pack("C", -127)));
|
||||
print_r(unpack("C", pack("C", 127)));
|
||||
print_r(unpack("C", pack("C", 255)));
|
||||
print_r(unpack("C", pack("C", -129)));
|
||||
|
||||
print_r(unpack("H", pack("H", 0x04)));
|
||||
|
||||
print_r(unpack("I", pack("I", 65534)));
|
||||
print_r(unpack("I", pack("I", 0)));
|
||||
print_r(unpack("I", pack("I", -1000)));
|
||||
print_r(unpack("I", pack("I", -64434)));
|
||||
print_r(unpack("I", pack("I", 4294967296)));
|
||||
print_r(unpack("I", pack("I", -4294967296)));
|
||||
|
||||
print_r(unpack("L", pack("L", 65534)));
|
||||
print_r(unpack("L", pack("L", 0)));
|
||||
print_r(unpack("L", pack("L", 2147483650)));
|
||||
print_r(unpack("L", pack("L", 4294967295)));
|
||||
print_r(unpack("L", pack("L", -2147483648)));
|
||||
|
||||
print_r(unpack("N", pack("N", 65534)));
|
||||
print_r(unpack("N", pack("N", 0)));
|
||||
print_r(unpack("N", pack("N", 2147483650)));
|
||||
print_r(unpack("N", pack("N", 4294967296)));
|
||||
print_r(unpack("N", pack("N", -2147483648)));
|
||||
print_r(unpack("N", pack("N", -30000)));
|
||||
|
||||
print_r(unpack("S", pack("S", 65534)));
|
||||
print_r(unpack("S", pack("S", 65537)));
|
||||
print_r(unpack("S", pack("S", 0)));
|
||||
print_r(unpack("S", pack("S", -1000)));
|
||||
print_r(unpack("S", pack("S", -64434)));
|
||||
print_r(unpack("S", pack("S", -65535)));
|
||||
|
||||
print_r(unpack("V", pack("V", 65534)));
|
||||
print_r(unpack("V", pack("V", 0)));
|
||||
print_r(unpack("V", pack("V", 2147483650)));
|
||||
print_r(unpack("V", pack("V", 4294967296)));
|
||||
print_r(unpack("V", pack("V", -2147483648)));
|
||||
|
||||
print_r(unpack("a", pack("a", "hello world")));
|
||||
print_r(unpack("a*", pack("a*", "hello world")));
|
||||
|
||||
print_r(unpack("c", pack("c", -127)));
|
||||
print_r(unpack("c", pack("c", 127)));
|
||||
print_r(unpack("c", pack("c", 255)));
|
||||
print_r(unpack("c", pack("c", -129)));
|
||||
|
||||
print_r(unpack("h", pack("h", 3000000)));
|
||||
|
||||
print_r(unpack("i", pack("i", 65534)));
|
||||
print_r(unpack("i", pack("i", 0)));
|
||||
print_r(unpack("i", pack("i", -1000)));
|
||||
print_r(unpack("i", pack("i", -64434)));
|
||||
print_r(unpack("i", pack("i", -65535)));
|
||||
print_r(unpack("i", pack("i", -2147483647)));
|
||||
|
||||
print_r(unpack("l", pack("l", 65534)));
|
||||
print_r(unpack("l", pack("l", 0)));
|
||||
print_r(unpack("l", pack("l", 2147483650)));
|
||||
print_r(unpack("l", pack("l", 4294967296)));
|
||||
print_r(unpack("l", pack("l", -2147483648)));
|
||||
|
||||
print_r(unpack("n", pack("n", 65534)));
|
||||
print_r(unpack("n", pack("n", 65537)));
|
||||
print_r(unpack("n", pack("n", 0)));
|
||||
print_r(unpack("n", pack("n", -1000)));
|
||||
print_r(unpack("n", pack("n", -64434)));
|
||||
print_r(unpack("n", pack("n", -65535)));
|
||||
|
||||
print_r(unpack("s", pack("s", 32767)));
|
||||
print_r(unpack("s", pack("s", 65535)));
|
||||
print_r(unpack("s", pack("s", 0)));
|
||||
print_r(unpack("s", pack("s", -1000)));
|
||||
print_r(unpack("s", pack("s", -64434)));
|
||||
print_r(unpack("s", pack("s", -65535)));
|
||||
|
||||
print_r(unpack("v", pack("v", 65534)));
|
||||
print_r(unpack("v", pack("v", 65537)));
|
||||
print_r(unpack("v", pack("v", 0)));
|
||||
print_r(unpack("v", pack("v", -1000)));
|
||||
print_r(unpack("v", pack("v", -64434)));
|
||||
print_r(unpack("v", pack("v", -65535)));
|
||||
?>
|
||||
--EXPECT--
|
||||
Array
|
||||
(
|
||||
[1] => h
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => hello world
|
||||
)
|
||||
"hello "
|
||||
Array
|
||||
(
|
||||
[1] => 129
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 127
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 255
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 127
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 4
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1000
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -64434
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483648
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483646
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483648
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483646
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483648
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -30000
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 64536
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1102
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483646
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483648
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => h
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => hello world
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -127
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 127
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 127
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 3
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1000
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -64434
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -65535
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483647
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483646
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -2147483648
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 64536
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1102
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 32767
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => -1000
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1102
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 65534
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 0
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 64536
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1102
|
||||
)
|
||||
Array
|
||||
(
|
||||
[1] => 1
|
||||
)
|
Loading…
Reference in New Issue
Block a user