summaryrefslogtreecommitdiff
path: root/ext/zlib/tests/gzopen_variation4.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/zlib/tests/gzopen_variation4.phpt')
-rw-r--r--ext/zlib/tests/gzopen_variation4.phpt161
1 files changed, 161 insertions, 0 deletions
diff --git a/ext/zlib/tests/gzopen_variation4.phpt b/ext/zlib/tests/gzopen_variation4.phpt
new file mode 100644
index 0000000000..f829acf063
--- /dev/null
+++ b/ext/zlib/tests/gzopen_variation4.phpt
@@ -0,0 +1,161 @@
+--TEST--
+Test gzopen() function : variation: use include path (relative directories in path)
+--SKIPIF--
+<?php
+if (!extension_loaded("zlib")) {
+ print "skip - ZLIB extension not loaded";
+}
+?>
+--FILE--
+<?php
+/* Prototype : resource gzopen(string filename, string mode [, int use_include_path])
+ * Description: Open a .gz-file and return a .gz-file pointer
+ * Source code: ext/zlib/zlib.c
+ * Alias to functions:
+ */
+
+echo "*** Testing gzopen() : usage variation ***\n";
+
+require_once('reading_include_path.inc');
+
+//define the files to go into these directories, create one in dir2
+echo "\n--- testing include path ---\n";
+set_include_path($newIncludePath);
+$modes = array("r", "r+", "rt");
+foreach($modes as $mode) {
+ test_gzopen($mode);
+}
+restore_include_path();
+
+// remove the directory structure
+chdir($baseDir);
+rmdir($workingDir);
+foreach($newdirs as $newdir) {
+ rmdir($newdir);
+}
+
+chdir("..");
+rmdir($thisTestDir);
+
+function test_gzopen($mode) {
+ global $scriptFile, $secondFile, $firstFile, $filename;
+
+ // create a file in the middle directory
+ $h = gzopen($secondFile, "w");
+ gzwrite($h, "This is a file in dir2");
+ gzclose($h);
+
+ echo "\n** testing with mode=$mode **\n";
+ // should read dir2 file
+ $h = gzopen($filename, $mode, true);
+ gzpassthru($h);
+ gzclose($h);
+ echo "\n";
+
+ //create a file in dir1
+ $h = gzopen($firstFile, "w");
+ gzwrite($h, "This is a file in dir1");
+ gzclose($h);
+
+ //should now read dir1 file
+ $h = gzopen($filename, $mode, true);
+ gzpassthru($h);
+ gzclose($h);
+ echo "\n";
+
+ // create a file in working directory
+ $h = gzopen($filename, "w");
+ gzwrite($h, "This is a file in working dir");
+ gzclose($h);
+
+ //should still read dir1 file
+ $h = gzopen($filename, $mode, true);
+ gzpassthru($h);
+ gzclose($h);
+ echo "\n";
+
+ unlink($firstFile);
+ unlink($secondFile);
+
+ //should read the file in working dir
+ $h = gzopen($filename, $mode, true);
+ gzpassthru($h);
+ gzclose($h);
+ echo "\n";
+
+ // create a file in the script directory
+ $h = gzopen($scriptFile, "w");
+ gzwrite($h, "This is a file in script dir");
+ gzclose($h);
+
+ //should read the file in script dir
+ $h = gzopen($filename, $mode, true);
+ gzpassthru($h);
+ gzclose($h);
+ echo "\n";
+
+ //cleanup
+ unlink($filename);
+ unlink($scriptFile);
+
+}
+
+?>
+===DONE===
+--EXPECTF--
+*** Testing gzopen() : usage variation ***
+
+--- testing include path ---
+
+** testing with mode=r **
+This is a file in dir2
+This is a file in dir1
+This is a file in dir1
+This is a file in working dir
+This is a file in script dir
+
+** testing with mode=r+ **
+
+Warning: gzopen(): cannot open a zlib stream for reading and writing at the same time! in %s on line %d
+
+Warning: gzpassthru() expects parameter 1 to be resource, boolean given in %s on line %d
+
+Warning: gzclose() expects parameter 1 to be resource, boolean given in %s on line %d
+
+
+Warning: gzopen(): cannot open a zlib stream for reading and writing at the same time! in %s on line %d
+
+Warning: gzpassthru() expects parameter 1 to be resource, boolean given in %s on line %d
+
+Warning: gzclose() expects parameter 1 to be resource, boolean given in %s on line %d
+
+
+Warning: gzopen(): cannot open a zlib stream for reading and writing at the same time! in %s on line %d
+
+Warning: gzpassthru() expects parameter 1 to be resource, boolean given in %s on line %d
+
+Warning: gzclose() expects parameter 1 to be resource, boolean given in %s on line %d
+
+
+Warning: gzopen(): cannot open a zlib stream for reading and writing at the same time! in %s on line %d
+
+Warning: gzpassthru() expects parameter 1 to be resource, boolean given in %s on line %d
+
+Warning: gzclose() expects parameter 1 to be resource, boolean given in %s on line %d
+
+
+Warning: gzopen(): cannot open a zlib stream for reading and writing at the same time! in %s on line %d
+
+Warning: gzpassthru() expects parameter 1 to be resource, boolean given in %s on line %d
+
+Warning: gzclose() expects parameter 1 to be resource, boolean given in %s on line %d
+
+
+** testing with mode=rt **
+This is a file in dir2
+This is a file in dir1
+This is a file in dir1
+This is a file in working dir
+This is a file in script dir
+===DONE===
+