summaryrefslogtreecommitdiff
path: root/ext/standard/tests/math/base_convert_error.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/math/base_convert_error.phpt')
-rw-r--r--ext/standard/tests/math/base_convert_error.phpt43
1 files changed, 43 insertions, 0 deletions
diff --git a/ext/standard/tests/math/base_convert_error.phpt b/ext/standard/tests/math/base_convert_error.phpt
new file mode 100644
index 0000000..4e35a81
--- /dev/null
+++ b/ext/standard/tests/math/base_convert_error.phpt
@@ -0,0 +1,43 @@
+--TEST--
+Test base_convert() function : error conditions - incorrect input
+--FILE--
+<?php
+/* Prototype : string base_convert ( string $number , int $frombase , int $tobase )
+ * Description: Convert a number between arbitrary bases.
+ * Source code: ext/standard/math.c
+ */
+
+echo "*** Testing base_convert() : error conditions ***\n";
+
+// get a class
+class classA
+{
+}
+
+echo "Incorrect number of arguments\n";
+base_convert();
+base_convert(35);
+base_convert(35,2);
+base_convert(1234, 1, 10);
+base_convert(1234, 10, 37);
+
+echo "Incorrect input\n";
+base_convert(new classA(), 8, 10);
+
+?>
+--EXPECTF--
+*** Testing base_convert() : error conditions ***
+Incorrect number of arguments
+
+Warning: base_convert() expects exactly 3 parameters, 0 given in %s on line %d
+
+Warning: base_convert() expects exactly 3 parameters, 1 given in %s on line %d
+
+Warning: base_convert() expects exactly 3 parameters, 2 given in %s on line %d
+
+Warning: base_convert(): Invalid `from base' (1) in %s on line %d
+
+Warning: base_convert(): Invalid `to base' (37) in %s on line %s
+Incorrect input
+
+Catchable fatal error: Object of class classA could not be converted to string in %s on line %d \ No newline at end of file