diff options
| author | Mark A. Hershberger <mah@debian.(none)> | 2009-03-25 00:37:27 -0400 |
|---|---|---|
| committer | Mark A. Hershberger <mah@debian.(none)> | 2009-03-25 00:37:27 -0400 |
| commit | 2d4e5b09576bb4f0ba716cc82cdf29ea04d9184b (patch) | |
| tree | 41ccc042009cba53e4ce43e727fcba4c1cfbf7f3 /ext/standard/tests/strings/pack.phpt | |
| parent | d29a4fd2dd3b5d4cf6e80b602544d7b71d794e76 (diff) | |
| download | php-upstream/5.2.2.tar.gz | |
Imported Upstream version 5.2.2upstream/5.2.2
Diffstat (limited to 'ext/standard/tests/strings/pack.phpt')
| -rw-r--r-- | ext/standard/tests/strings/pack.phpt | 385 |
1 files changed, 385 insertions, 0 deletions
diff --git a/ext/standard/tests/strings/pack.phpt b/ext/standard/tests/strings/pack.phpt new file mode 100644 index 000000000..b36eee1e5 --- /dev/null +++ b/ext/standard/tests/strings/pack.phpt @@ -0,0 +1,385 @@ +--TEST-- +Generic pack()/unpack() tests +--SKIPIF-- +<?php +if (PHP_INT_MAX > 2147483647) { + die("skip 32bit test only"); +} +?> +--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 +) |
