summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xext/reflection/tests/parameters_001.phpt34
1 files changed, 34 insertions, 0 deletions
diff --git a/ext/reflection/tests/parameters_001.phpt b/ext/reflection/tests/parameters_001.phpt
new file mode 100755
index 0000000000..918ed5e683
--- /dev/null
+++ b/ext/reflection/tests/parameters_001.phpt
@@ -0,0 +1,34 @@
+--TEST--
+invoke with non object or null value
+--FILE--
+<?php
+
+class Test {
+ function func($x, $y = NULL){
+ }
+}
+
+
+$f = new ReflectionMethod('Test', 'func');
+
+$p = new ReflectionParameter(array('Test', 'func'), 'x');
+var_dump($p->isOptional());
+
+$p = new ReflectionParameter(array('Test', 'func'), 'y');
+var_dump($p->isOptional());
+
+try {
+ $p = new ReflectionParameter(array('Test', 'func'), 'z');
+ var_dump($p->isOptional());
+}
+catch (Exception $e) {
+ var_dump($e->getMessage());
+}
+
+?>
+===DONE===
+--EXPECT--
+bool(false)
+bool(true)
+string(54) "The parameter specified by its name could not be found"
+===DONE===