php-src/ext/zlib/tests/inflate_init_reuse.phpt
2018-10-14 12:07:20 -03:00

33 lines
830 B
PHP

--TEST--
Test incremental inflate_init() context reuse
--SKIPIF--
<?php
if (!extension_loaded("zlib")) {
print "skip - ZLIB extension not loaded";
}
?>
--FILE--
<?php
$resource = inflate_init(ZLIB_ENCODING_GZIP);
$uncompressed = implode(range("a","z"));
$compressed = gzencode($uncompressed);
$inflated = "";
for ($i=0;$i<strlen($compressed);$i++) {
$inflated .= inflate_add($resource, $compressed[$i]);
}
$inflated .= inflate_add($resource, "", ZLIB_FINISH);
assert($inflated === $uncompressed);
// Now reuse the existing resource after finishing the previous operations ...
$inflated = "";
for ($i=0;$i<strlen($compressed);$i++) {
$inflated .= inflate_add($resource, $compressed[$i]);
}
$inflated .= inflate_add($resource, "", ZLIB_FINISH);
assert($inflated === $uncompressed);
?>
===DONE===
--EXPECT--
===DONE===