summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/disk_total_space_error.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/file/disk_total_space_error.phpt')
-rw-r--r--ext/standard/tests/file/disk_total_space_error.phpt52
1 files changed, 52 insertions, 0 deletions
diff --git a/ext/standard/tests/file/disk_total_space_error.phpt b/ext/standard/tests/file/disk_total_space_error.phpt
new file mode 100644
index 0000000..d986f77
--- /dev/null
+++ b/ext/standard/tests/file/disk_total_space_error.phpt
@@ -0,0 +1,52 @@
+--TEST--
+Test disk_total_space() function : error conditions
+--SKIPIF--
+<?php
+if(substr(PHP_OS, 0, 3) == 'WIN')
+ die("skip Not valid on Windows");
+?>
+--FILE--
+<?php
+/*
+ * Prototype: float disk_total_space( string $directory );
+ * Description: given a string containing a directory, this function
+ * will return the total number of bytes on the corresponding
+ * filesystem or disk partition
+ */
+
+echo "*** Testing error conditions ***\n";
+$file_path = dirname(__FILE__);
+var_dump( disk_total_space() ); // Zero Arguments
+
+var_dump( disk_total_space( $file_path, "extra argument") ); // More than valid number of arguments
+
+
+var_dump( disk_total_space( $file_path."/dir1" )); // Invalid directory
+
+$fh = fopen( $file_path."/disk_total_space.tmp", "w" );
+fwrite( $fh, (binary)" Garbage data for the temporary file" );
+var_dump( disk_total_space( $file_path."/disk_total_space.tmp" )); // file input instead of directory
+fclose($fh);
+
+echo"\n--- Done ---";
+?>
+--CLEAN--
+<?php
+$file_path = dirname(__FILE__);
+unlink($file_path."/disk_total_space.tmp");
+?>
+--EXPECTF--
+*** Testing error conditions ***
+
+Warning: disk_total_space() expects exactly 1 parameter, 0 given in %s on line %d
+NULL
+
+Warning: disk_total_space() expects exactly 1 parameter, 2 given in %s on line %d
+NULL
+
+Warning: disk_total_space(): No such file or directory in %s on line %d
+bool(false)
+float(%d)
+
+--- Done ---
+