compression_methods.phpt 1000 B

1234567891011121314151617181920212223242526272829303132333435
  1. --TEST--
  2. Recognition of compression methods
  3. --DESCRIPTION--
  4. This test is supposed to cover all compression methods that are recognized by
  5. libzip, but for now only 6 methods are available in compression_methods.zip.
  6. The zip and the test should be extended, if possible.
  7. --SKIPIF--
  8. <?php
  9. if (!extension_loaded('zip')) die('skip zip extension not available');
  10. ?>
  11. --FILE--
  12. <?php
  13. $methods = array(
  14. 'store' => ZipArchive::CM_STORE,
  15. 'deflate' => ZipArchive::CM_DEFLATE,
  16. 'deflate64' => ZipArchive::CM_DEFLATE64,
  17. 'bzip2' => ZipArchive::CM_BZIP2,
  18. 'lzma' => ZipArchive::CM_LZMA,
  19. 'ppmd' => ZipArchive::CM_PPMD
  20. );
  21. $zip = new ZipArchive();
  22. $zip->open(__DIR__ . '/compression_methods.zip');
  23. foreach ($methods as $filename => $method) {
  24. echo "$filename: ";
  25. var_dump($zip->statName($filename)['comp_method'] === $method);
  26. }
  27. $zip->close();
  28. ?>
  29. --EXPECT--
  30. store: bool(true)
  31. deflate: bool(true)
  32. deflate64: bool(true)
  33. bzip2: bool(true)
  34. lzma: bool(true)
  35. ppmd: bool(true)