Annotation of embedaddon/php/ext/reflection/tests/ReflectionMethod_setAccessible.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Test ReflectionMethod::setAccessible().
! 3: --FILE--
! 4: <?php
! 5: class A {
! 6: private function aPrivate($a) { print __METHOD__ . "\n"; }
! 7: private static function aPrivateStatic($a) { print __METHOD__ . "\n"; }
! 8: protected function aProtected($a) { print __METHOD__ . "\n"; }
! 9: protected static function aProtectedStatic($a) { print __METHOD__ . "\n"; }
! 10: }
! 11:
! 12: $private = new ReflectionMethod('A', 'aPrivate');
! 13: $privateStatic = new ReflectionMethod('A', 'aPrivateStatic');
! 14: $protected = new ReflectionMethod('A', 'aProtected');
! 15: $protectedStatic = new ReflectionMethod('A', 'aProtectedStatic');
! 16:
! 17: try {
! 18: $private->invoke(new A, NULL);
! 19: }
! 20:
! 21: catch (ReflectionException $e) {
! 22: var_dump($e->getMessage());
! 23: }
! 24:
! 25: try {
! 26: $private->invokeArgs(new A, array(NULL));
! 27: }
! 28:
! 29: catch (ReflectionException $e) {
! 30: var_dump($e->getMessage());
! 31: }
! 32:
! 33: try {
! 34: $privateStatic->invoke(NULL, NULL);
! 35: }
! 36:
! 37: catch (ReflectionException $e) {
! 38: var_dump($e->getMessage());
! 39: }
! 40:
! 41: try {
! 42: $privateStatic->invokeArgs(NULL, array(NULL));
! 43: }
! 44:
! 45: catch (ReflectionException $e) {
! 46: var_dump($e->getMessage());
! 47: }
! 48:
! 49: try {
! 50: $protected->invoke(new A, NULL);
! 51: }
! 52:
! 53: catch (ReflectionException $e) {
! 54: var_dump($e->getMessage());
! 55: }
! 56:
! 57: try {
! 58: $protected->invokeArgs(new A, array(NULL));
! 59: }
! 60:
! 61: catch (ReflectionException $e) {
! 62: var_dump($e->getMessage());
! 63: }
! 64:
! 65: try {
! 66: $protectedStatic->invoke(NULL, NULL);
! 67: }
! 68:
! 69: catch (ReflectionException $e) {
! 70: var_dump($e->getMessage());
! 71: }
! 72:
! 73: try {
! 74: $protectedStatic->invokeArgs(NULL, array(NULL));
! 75: }
! 76:
! 77: catch (ReflectionException $e) {
! 78: var_dump($e->getMessage());
! 79: }
! 80:
! 81: $private->setAccessible(TRUE);
! 82: $privateStatic->setAccessible(TRUE);
! 83: $protected->setAccessible(TRUE);
! 84: $protectedStatic->setAccessible(TRUE);
! 85:
! 86: $private->invoke(new A, NULL);
! 87: $private->invokeArgs(new A, array(NULL));
! 88: $privateStatic->invoke(NULL, NULL);
! 89: $privateStatic->invokeArgs(NULL, array(NULL));
! 90: $protected->invoke(new A, NULL);
! 91: $protected->invokeArgs(new A, array(NULL));
! 92: $protectedStatic->invoke(NULL, NULL);
! 93: $protectedStatic->invokeArgs(NULL, array(NULL));
! 94: ?>
! 95: --EXPECT--
! 96: string(73) "Trying to invoke private method A::aPrivate() from scope ReflectionMethod"
! 97: string(73) "Trying to invoke private method A::aPrivate() from scope ReflectionMethod"
! 98: string(79) "Trying to invoke private method A::aPrivateStatic() from scope ReflectionMethod"
! 99: string(79) "Trying to invoke private method A::aPrivateStatic() from scope ReflectionMethod"
! 100: string(77) "Trying to invoke protected method A::aProtected() from scope ReflectionMethod"
! 101: string(77) "Trying to invoke protected method A::aProtected() from scope ReflectionMethod"
! 102: string(83) "Trying to invoke protected method A::aProtectedStatic() from scope ReflectionMethod"
! 103: string(83) "Trying to invoke protected method A::aProtectedStatic() from scope ReflectionMethod"
! 104: A::aPrivate
! 105: A::aPrivate
! 106: A::aPrivateStatic
! 107: A::aPrivateStatic
! 108: A::aProtected
! 109: A::aProtected
! 110: A::aProtectedStatic
! 111: A::aProtectedStatic
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>