1877d7aafcc8d5bb9f8ebc60c05485ac2dc8e838
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Tests / AccessibleObjectInterface.php
1 <?php
2 namespace TYPO3\CMS\Core\Tests;
3
4 /***************************************************************
5 * Copyright notice
6 *
7 * (c) 2012-2013 Nicole Cordes <nicole.cordes@googlemail.com>
8 * All rights reserved
9 *
10 * This script is part of the TYPO3 project. The TYPO3 project is
11 * free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * The GNU General Public License can be found at
17 * http://www.gnu.org/copyleft/gpl.html.
18 *
19 * This script is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * This copyright notice MUST APPEAR in all copies of the script!
25 ***************************************************************/
26
27 /**
28 * This interface defines the methods provided by TYPO3\CMS\Core\Tests\TestCase::getAccessibleMock.::
29 *
30 * @author Nicole Cordes <nicole.cordes@googlemail.com>
31 */
32 interface AccessibleObjectInterface {
33 /**
34 * Calls the method $method using call_user_func* and returns its return value.
35 *
36 * @param string $methodName name of method to call, must not be empty
37 *
38 * @return mixed the return value from the method $methodName
39 */
40 public function _call($methodName);
41
42 /**
43 * Calls the method $method without using call_user_func* and returns its return value.
44 *
45 * @param string $methodName name of method to call, must not be empty
46 * @param mixed &$arg1 first argument given to method $methodName
47 * @param mixed &$arg2 second argument given to method $methodName
48 * @param mixed &$arg3 third argument given to method $methodName
49 * @param mixed &$arg4 fourth argument given to method $methodName
50 * @param mixed &$arg5 fifth argument given to method $methodName
51 * @param mixed &$arg6 sixth argument given to method $methodName
52 * @param mixed &$arg7 seventh argument given to method $methodName
53 * @param mixed &$arg8 eighth argument given to method $methodName
54 * @param mixed &$arg9 ninth argument given to method $methodName
55 *
56 * @return mixed the return value from the method $methodName
57 */
58 public function _callRef(
59 $methodName, &$arg1 = NULL, &$arg2 = NULL, &$arg3 = NULL, &$arg4 = NULL, &$arg5= NULL, &$arg6 = NULL, &$arg7 = NULL,
60 &$arg8 = NULL, &$arg9 = NULL
61 );
62
63 /**
64 * Sets the value of a property.
65 *
66 * @param string $propertyName name of property to set value for, must not be empty
67 * @param mixed $value the new value for the property defined in $propertyName
68 *
69 * @return void
70 */
71 public function _set($propertyName, $value);
72
73 /**
74 * Sets the value of a property by reference.
75 *
76 * @param string $propertyName name of property to set value for, must not be empty
77 * @param mixed &$value the new value for the property defined in $propertyName
78 *
79 * @return void
80 */
81 public function _setRef($propertyName, &$value);
82
83 /**
84 * Sets the value of a static property.
85 *
86 * @param string $propertyName name of property to set value for, must not be empty
87 * @param mixed $value the new value for the property defined in $propertyName
88 *
89 * @return void
90 */
91 public function _setStatic($propertyName, $value);
92
93 /**
94 * Gets the value of the given property.
95 *
96 * @param string $propertyName name of property to return value of, must not be empty
97 *
98 * @return mixed the value of the property $propertyName
99 */
100 public function _get($propertyName);
101
102 /**
103 * Gets the value of the given static property.
104 *
105 * @param string $propertyName name of property to return value of, must not be empty
106 *
107 * @return mixed the value of the static property $propertyName
108 */
109 public function _getStatic($propertyName);
110 }