summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/fpassthru_basic.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/fpassthru_basic.phpt')
-rw-r--r--ext/standard/tests/file/fpassthru_basic.phpt128
1 files changed, 128 insertions, 0 deletions
diff --git a/ext/standard/tests/file/fpassthru_basic.phpt b/ext/standard/tests/file/fpassthru_basic.phpt
new file mode 100644
index 0000000..8924b27
--- /dev/null
+++ b/ext/standard/tests/file/fpassthru_basic.phpt
@@ -0,0 +1,128 @@
+--TEST--
+Test fpassthru() function: Basic functionality
+--FILE--
+<?php
+/*
+Prototype: int fpassthru ( resource $handle );
+Description: Reads to EOF on the given file pointer from the current position
+ and writes the results to the output buffer.
+*/
+
+$file_name = dirname(__FILE__)."/passthru.tmp";
+$write_handle = fopen($file_name, "w");
+
+$string = "Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^
+ Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^\n";
+if(substr(PHP_OS, 0, 3) == "WIN") {
+ $string = str_replace("\r",'', $string);
+}
+fwrite($write_handle, $string);
+fclose($write_handle);
+
+$read_handle = fopen($file_name, "r");
+
+echo "*** Test basic functionality of fpassthru() function ***\n";
+echo "\n-- Before seek operation --\n";
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 0 --\n";
+fseek($read_handle, 0);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 3 --\n";
+fseek($read_handle, 3);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 13 --\n";
+fseek($read_handle, 13);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 14 --\n";
+fseek($read_handle, 14);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 23 --\n";
+fseek($read_handle, 23);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 34 --\n";
+fseek($read_handle, 34);
+var_dump( fpassthru($read_handle) );
+
+echo "\n-- After seeking position to 1000 --\n";
+fseek($read_handle, 1000);
+var_dump( fpassthru($read_handle) );
+
+fclose($read_handle);
+
+echo "*** Done ***\n";
+
+?>
+--CLEAN--
+<?php
+unlink(dirname(__FILE__)."/passthru.tmp");
+?>
+--EXPECTF--
+*** Test basic functionality of fpassthru() function ***
+
+-- Before seek operation --
+Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(133)
+
+-- After seeking position to 0 --
+Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(133)
+
+-- After seeking position to 3 --
+lo, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(130)
+
+-- After seeking position to 13 --
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(120)
+
+-- After seeking position to 14 --
+ abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(119)
+
+-- After seeking position to 23 --
+adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(110)
+
+-- After seeking position to 34 --
+2394723947 $%$%#$%#$%#^#%^
+ Hello, world
+, abcdefg adsdsfdf
+8u2394723947 $%$%#$%#$%#^#%^
+int(99)
+
+-- After seeking position to 1000 --
+int(0)
+*** Done ***