helly Sun Feb 13 08:59:08 2005 EDT Added files: (Branch: PHP_5_0) /php-src/tests/reflection 003.phpt 004.phpt 005.phpt
Removed files: /php-src/tests/reflection invoke.phpt Log: - MFH http://cvs.php.net/co.php/php-src/tests/reflection/003.phpt?r=1.1&p=1 Index: php-src/tests/reflection/003.phpt +++ php-src/tests/reflection/003.phpt --TEST-- invoke() with base class method --FILE-- <?php class Foo { function Test() { echo __METHOD__ . "\n"; } } class Bar extends Foo { function Test() { echo __METHOD__ . "\n"; } } $o = new Bar; $r = new ReflectionMethod('Foo','Test'); $r->invoke($o); ?> ===DONE=== --EXPECT-- Foo::Test ===DONE=== http://cvs.php.net/co.php/php-src/tests/reflection/004.phpt?r=1.1&p=1 Index: php-src/tests/reflection/004.phpt +++ php-src/tests/reflection/004.phpt --TEST-- invoke() with non object or null value --FILE-- <?php class a { function a(){ } } class b { } $b = new b(); $a=new ReflectionClass("a"); $m=$a->getMethod("a"); try { $m->invoke(null); } catch (ReflectionException $E) { echo $E->getMessage()."\n"; } try { $m->invoke($b); } catch (ReflectionException $E) { echo $E->getMessage()."\n"; } $b = new a(); try { $m->invoke($b); } catch (ReflectionException $E) { echo $E->getMessage()."\n"; } echo "===DONE===\n";?> --EXPECT-- Non-object passed to Invoke() Given object is not an instance of the class this method was declared in ===DONE=== http://cvs.php.net/co.php/php-src/tests/reflection/005.phpt?r=1.1&p=1 Index: php-src/tests/reflection/005.phpt +++ php-src/tests/reflection/005.phpt --TEST-- ReflectionMethod::getDocComment() uses wrong comment block --FILE-- <?php function strip_doc_comment($c) { if (!strlen($c) || $c === false) return $c; return trim(substr($c, 3, -2)); } /** Comment for class A */ class A { /** Method A::bla() */ function bla() { } function foo() { /** * This is a valid comment inside a method */ } function bar() { // I don't have a doc comment.... } /** * Comment for A::baz() */ function baz() { } } $r = new ReflectionClass('A'); var_dump(strip_doc_comment($r->getDocComment())); foreach($r->getMethods() as $m) { var_dump(strip_doc_comment($m->getDocComment())); } ?> ===DONE=== --EXPECT-- string(19) "Comment for class A" string(15) "Method A::bla()" bool(false) bool(false) string(22) "* Comment for A::baz()" ===DONE=== -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php