summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/standard/tests/strings/basename_invalid_path.phpt22
-rw-r--r--ext/standard/tests/strings/basename_invalid_path_win.phpt22
-rw-r--r--ext/standard/tests/strings/basename_variation.phpt6
3 files changed, 44 insertions, 6 deletions
diff --git a/ext/standard/tests/strings/basename_invalid_path.phpt b/ext/standard/tests/strings/basename_invalid_path.phpt
new file mode 100644
index 0000000000..b632efa845
--- /dev/null
+++ b/ext/standard/tests/strings/basename_invalid_path.phpt
@@ -0,0 +1,22 @@
+--TEST--
+Test basename() function : usage variations with invalid paths
+--SKIPIF--
+<?php
+if((substr(PHP_OS, 0, 3) == "WIN"))
+ die('skip not for Windows"');
+?>
+--FILE--
+<?php
+/* Prototype: string basename ( string $path [, string $suffix] );
+ Description: Given a string containing a path to a file,
+ this function will return the base name of the file.
+ If the filename ends in suffix this will also be cut off.
+*/
+
+var_dump(basename(chr(-1)));
+
+echo "Done\n";
+
+--EXPECTF--
+string(0) ""
+Done
diff --git a/ext/standard/tests/strings/basename_invalid_path_win.phpt b/ext/standard/tests/strings/basename_invalid_path_win.phpt
new file mode 100644
index 0000000000..587f2b114c
--- /dev/null
+++ b/ext/standard/tests/strings/basename_invalid_path_win.phpt
@@ -0,0 +1,22 @@
+--TEST--
+Test basename() function : usage variations with invalid paths
+--SKIPIF--
+<?php
+if((substr(PHP_OS, 0, 3) != "WIN"))
+ die('skip Run only on Windows"');
+?>
+--FILE--
+<?php
+/* Prototype: string basename ( string $path [, string $suffix] );
+ Description: Given a string containing a path to a file,
+ this function will return the base name of the file.
+ If the filename ends in suffix this will also be cut off.
+*/
+
+var_dump(basename("\377"));
+
+echo "Done\n";
+
+--EXPECTF--
+string(1) "%c"
+Done
diff --git a/ext/standard/tests/strings/basename_variation.phpt b/ext/standard/tests/strings/basename_variation.phpt
index 86b1cd296b..1efd8c701a 100644
--- a/ext/standard/tests/strings/basename_variation.phpt
+++ b/ext/standard/tests/strings/basename_variation.phpt
@@ -67,9 +67,6 @@ $file_path_variations = array (
array(""),
array(''),
array(NULL),
-
- /* invalid paths */
- array(chr(-1)),
);
function check_basename( $path_arrays ) {
@@ -235,7 +232,4 @@ string(0) ""
--Iteration 48--
string(0) ""
-
---Iteration 49--
-string(0) ""
Done