wharmby         Wed Jan 21 12:28:34 2009 UTC

  Modified files:              
    /php-src/ext/zlib/tests     gzuncompress_error1.phpt 
  Log:
  New gzuncompress() test. php6 tets fails currentlly due to #47179. Tested on 
Windows, Linux and Linux 64 bit
  
http://cvs.php.net/viewvc.cgi/php-src/ext/zlib/tests/gzuncompress_error1.phpt?r1=1.1&r2=1.2&diff_format=u
Index: php-src/ext/zlib/tests/gzuncompress_error1.phpt
diff -u /dev/null php-src/ext/zlib/tests/gzuncompress_error1.phpt:1.2
--- /dev/null   Wed Jan 21 12:28:34 2009
+++ php-src/ext/zlib/tests/gzuncompress_error1.phpt     Wed Jan 21 12:28:33 2009
@@ -0,0 +1,93 @@
+--TEST--
+Test gzuncompress() function : error conditions 
+--XFAIL--
+Test will fail until bug #47179 resolved; no error when $length too small 
+--SKIPIF--
+<?php 
+if (!extension_loaded("zlib")) {
+       print "skip - ZLIB extension not loaded"; 
+}       
+?>
+--FILE--
+<?php
+/* Prototype  : string gzuncompress(string data [, int length])
+ * Description: Unzip a gzip-compressed string 
+ * Source code: ext/zlib/zlib.c
+ * Alias to functions: 
+ */
+
+
+
+echo "*** Testing gzuncompress() : error conditions ***\n";
+
+// Zero arguments
+echo "\n-- Testing gzuncompress() function with Zero arguments --\n";
+var_dump( gzuncompress() );
+
+//Test gzuncompress with one more than the expected number of arguments
+echo "\n-- Testing gzuncompress() function with more than expected no. of 
arguments --\n";
+$data = 'string_val';
+$length = 10;
+$extra_arg = 10;
+var_dump( gzuncompress($data, $length, $extra_arg) );
+
+echo "\n-- Testing with Unicode string --\n";
+var_dump(gzuncompress($data, $length));
+
+
+echo "\n-- Testing with a buffer that is too small --\n";
+$short_len = strlen($data) - 1;
+$compressed = gzcompress(b"$data");
+
+var_dump(gzuncompress($compressed, $short_len));
+
+
+echo "\n-- Testing with incorrect arguments --\n";
+var_dump(gzuncompress(123));
+
+class Tester {
+    function Hello() {
+        echo "Hello\n"; 
+    }
+}
+
+$testclass = new Tester();
+var_dump(gzuncompress($testclass));
+
+var_dump(gzuncompress($compressed, "this is not a number\n"));
+
+?>
+===DONE===
+--EXPECTF--
+*** Testing gzuncompress() : error conditions ***
+
+-- Testing gzuncompress() function with Zero arguments --
+
+Warning: gzuncompress() expects at least 1 parameter, 0 given in %s on line %d
+NULL
+
+-- Testing gzuncompress() function with more than expected no. of arguments --
+
+Warning: gzuncompress() expects at most 2 parameters, 3 given in %s on line %d
+NULL
+
+-- Testing with Unicode string --
+
+Warning: gzuncompress() expects parameter 1 to be strictly a binary string, 
Unicode string given in %s on line %d
+NULL
+
+-- Testing with a buffer that is too small --
+Warning: gzuncompress(): buffer error in %s on line %d
+bool(false)
+
+-- Testing with incorrect arguments --
+
+Warning: gzuncompress(): data error in %s on line %d
+bool(false)
+
+Warning: gzuncompress() expects parameter 1 to be binary string, object given 
in %s on line %d
+NULL
+
+Warning: gzuncompress() expects parameter 2 to be long, Unicode string given 
in %s on line %d
+NULL
+===DONE===
\ No newline at end of file



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to