Annotation of embedaddon/php/ext/reflection/tests/ReflectionMethod_setAccessible.phpt, revision 1.1.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>