summaryrefslogtreecommitdiff
path: root/ext/zlib/tests/deflate_init_reuse.phpt
blob: 0b807c99f82e8e28220303c6712939b409910f62 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--TEST--
Test incremental deflate_init() context reuse
--SKIPIF--
<?php
if (!extension_loaded("zlib")) {
    print "skip - ZLIB extension not loaded";
}
?>
--FILE--
<?php
$resource = deflate_init(ZLIB_ENCODING_DEFLATE);
foreach (range("a", "z") as $char) {
    deflate_add($resource, $char);
}
deflate_add($resource, "", ZLIB_FINISH);

// Now reuse the existing resource after finishing the previous operations ...
$uncompressed = $compressed = "";
foreach (range("a", "z") as $char) {
    $uncompressed .= $char;
    $compressed .= deflate_add($resource, $char, ZLIB_NO_FLUSH);
}
$compressed .= deflate_add($resource, "", ZLIB_FINISH);
assert($uncompressed === zlib_decode($compressed));
?>
===DONE===
--EXPECTF--
===DONE===