deflate_init_reuse.phpt 725 B

12345678910111213141516171819202122232425262728
  1. --TEST--
  2. Test incremental deflate_init() context reuse
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded("zlib")) {
  6. print "skip - ZLIB extension not loaded";
  7. }
  8. ?>
  9. --FILE--
  10. <?php
  11. $resource = deflate_init(ZLIB_ENCODING_DEFLATE);
  12. foreach (range("a", "z") as $char) {
  13. deflate_add($resource, $char);
  14. }
  15. deflate_add($resource, "", ZLIB_FINISH);
  16. // Now reuse the existing resource after finishing the previous operations ...
  17. $uncompressed = $compressed = "";
  18. foreach (range("a", "z") as $char) {
  19. $uncompressed .= $char;
  20. $compressed .= deflate_add($resource, $char, ZLIB_NO_FLUSH);
  21. }
  22. $compressed .= deflate_add($resource, "", ZLIB_FINISH);
  23. assert($uncompressed === zlib_decode($compressed));
  24. ?>
  25. ===DONE===
  26. --EXPECT--
  27. ===DONE===