gzencode_error1.phpt 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. --TEST--
  2. Test gzencode() function : error conditions
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded("zlib")) {
  6. print "skip - ZLIB extension not loaded";
  7. }
  8. ?>
  9. --FILE--
  10. <?php
  11. /* Prototype : string gzencode ( string $data [, int $level [, int $encoding_mode ]] )
  12. * Description: Gzip-compress a string
  13. * Source code: ext/zlib/zlib.c
  14. * Alias to functions:
  15. */
  16. /*
  17. * Test error cases for gzencode
  18. */
  19. echo "*** Testing gzencode() : error conditions ***\n";
  20. // Zero arguments
  21. echo "\n-- Testing gzencode() function with Zero arguments --\n";
  22. var_dump( gzencode() );
  23. //Test gzencode with one more than the expected number of arguments
  24. echo "\n-- Testing gzencode() function with more than expected no. of arguments --\n";
  25. $data = 'string_val';
  26. $level = 2;
  27. $encoding_mode = FORCE_DEFLATE;
  28. $extra_arg = 10;
  29. var_dump( gzencode($data, $level, $encoding_mode, $extra_arg) );
  30. echo "\n-- Testing with incorrect compression level --\n";
  31. $bad_level = 99;
  32. var_dump(gzencode($data, $bad_level));
  33. echo "\n-- Testing with incorrect encoding_mode --\n";
  34. $bad_mode = 99;
  35. var_dump(gzencode($data, $level, $bad_mode));
  36. class Tester {
  37. function Hello() {
  38. echo "Hello\n";
  39. }
  40. }
  41. echo "\n-- Testing with incorrect parameters --\n";
  42. $testclass = new Tester();
  43. var_dump(gzencode($testclass));
  44. var_dump(gzencode($data, $testclass));
  45. var_dump(gzencode($data, -1, 99.99));
  46. var_dump(gzencode($data, -1, $testclass));
  47. var_dump(gzencode($data, "a very none numeric string\n"));
  48. ?>
  49. ===Done===
  50. --EXPECTF--
  51. *** Testing gzencode() : error conditions ***
  52. -- Testing gzencode() function with Zero arguments --
  53. Warning: gzencode() expects at least 1 parameter, 0 given in %s on line %d
  54. NULL
  55. -- Testing gzencode() function with more than expected no. of arguments --
  56. Warning: gzencode() expects at most 3 parameters, 4 given in %s on line %d
  57. NULL
  58. -- Testing with incorrect compression level --
  59. Warning: gzencode(): compression level (99) must be within -1..9 in %s on line %d
  60. bool(false)
  61. -- Testing with incorrect encoding_mode --
  62. Warning: gzencode(): encoding mode must be either ZLIB_ENCODING_RAW, ZLIB_ENCODING_GZIP or ZLIB_ENCODING_DEFLATE in %s on line %d
  63. bool(false)
  64. -- Testing with incorrect parameters --
  65. Warning: gzencode() expects parameter 1 to be string, object given in %s on line %d
  66. NULL
  67. Warning: gzencode() expects parameter 2 to be int, object given in %s on line %d
  68. NULL
  69. Warning: gzencode(): encoding mode must be either ZLIB_ENCODING_RAW, ZLIB_ENCODING_GZIP or ZLIB_ENCODING_DEFLATE in %s on line %d
  70. bool(false)
  71. Warning: gzencode() expects parameter 3 to be int, object given in %s on line %d
  72. NULL
  73. Warning: gzencode() expects parameter 2 to be int, string given in %s on line %d
  74. NULL
  75. ===Done===