summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2004-09-27 22:23:31 +0000
committerMarcus Boerger <helly@php.net>2004-09-27 22:23:31 +0000
commit0e68cf3cdb20ded35eee25b8529e9d86cd789d13 (patch)
tree344733429e06c79206ca0740d73df942035b0a93
parentc48f96a7900ae7819532b0022efb1423fbcf1075 (diff)
downloadphp-git-0e68cf3cdb20ded35eee25b8529e9d86cd789d13.tar.gz
- Add new test
-rwxr-xr-xext/reflection/tests/002.phpt63
1 files changed, 63 insertions, 0 deletions
diff --git a/ext/reflection/tests/002.phpt b/ext/reflection/tests/002.phpt
new file mode 100755
index 0000000000..195aeb23e7
--- /dev/null
+++ b/ext/reflection/tests/002.phpt
@@ -0,0 +1,63 @@
+--TEST--
+Reflection properties are read only
+--FILE--
+<?php
+
+class ReflectionMethodEx extends ReflectionMethod
+{
+ public $foo = "xyz";
+
+ function __construct($c,$m)
+ {
+ echo __METHOD__ . "\n";
+ parent::__construct($c,$m);
+ }
+}
+
+$r = new ReflectionMethodEx('ReflectionMethodEx','getName');
+
+var_dump($r->class);
+var_dump($r->name);
+var_dump($r->foo);
+@var_dump($r->bar);
+
+try
+{
+ $r->class = 'bullshit';
+}
+catch(ReflectionException $e)
+{
+ echo $e->getMessage() . "\n";
+}
+try
+{
+$r->name = 'bullshit';
+}
+catch(ReflectionException $e)
+{
+ echo $e->getMessage() . "\n";
+}
+
+$r->foo = 'bar';
+$r->bar = 'baz';
+
+var_dump($r->class);
+var_dump($r->name);
+var_dump($r->foo);
+var_dump($r->bar);
+
+?>
+===DONE===
+--EXPECTF--
+ReflectionMethodEx::__construct
+string(18) "ReflectionMethodEx"
+string(7) "getName"
+string(3) "xyz"
+NULL
+Cannot set read-only property ReflectionMethodEx::$class
+Cannot set read-only property ReflectionMethodEx::$name
+string(18) "ReflectionMethodEx"
+string(7) "getName"
+string(3) "bar"
+string(3) "baz"
+===DONE===