]> granicus.if.org Git - php/commitdiff
- Add new test
authorMarcus Boerger <helly@php.net>
Mon, 27 Sep 2004 22:23:31 +0000 (22:23 +0000)
committerMarcus Boerger <helly@php.net>
Mon, 27 Sep 2004 22:23:31 +0000 (22:23 +0000)
ext/reflection/tests/002.phpt [new file with mode: 0755]

diff --git a/ext/reflection/tests/002.phpt b/ext/reflection/tests/002.phpt
new file mode 100755 (executable)
index 0000000..195aeb2
--- /dev/null
@@ -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===