<?PHP
CLASS Mock EXTENDS \ILLI\Core\Object
{
protected static $__DEFINE_propCom =
[
'param1',
'param2'
];
protected static $__DEFINE_propDef =
[
'param1' => 'Mock:val1',
'param4' => 'Mock:val4'
];
protected static $__DEFINE_propAsp =
[
'param1'
];
protected $param1 = NULL;
protected $param2 = NULL;
protected $param3 = NULL;
protected $param4 = NULL;
protected $param5 = NULL;
}
CLASS MockDeep EXTENDS \ILLI\Core\Mock
{
protected static $__DEFINE_propCom =
[
'param1',
'param2'
];
protected static $__DEFINE_propDef =
[
'param1' => 'MockDeep:val1',
self::DI_CLASS =>
[
'baz' => __CLASS__,
'alice' => __CLASS__,
'tiffany' => __CLASS__,
]
];
protected static $__DEFINE_propAsp =
[
'param1' => false,
'param4'
];
}
CLASS MockDeepDeep EXTENDS \ILLI\Core\MockDeep
{
protected static $__DEFINE_propCom =
[
'param1',
'param2'
];
protected static $__DEFINE_propDef =
[
'param1' => 'MockDeepDeep:val1',
'param2' => 'MockDeepDeep:val2',
'param3' => 'MockDeepDeep:val3',
'param4' => 'MockDeepDeep:val4',
self::DI_CLASS =>
[
'baz' => __CLASS__,
'alice' => __CLASS__,
'foobar' => __CLASS__
]
];
protected static $__DEFINE_propAsp =
[
'param1',
'param3'
];
protected function aspectableSetParam1($value)
{
$this->param1 = $value.':'.__METHOD__;
}
}
$mdd = new MockDeepDeep(
[
MockDeepDeep::DI_CLASS => ['baz' => 'foo', 'new' => 'append'],
'param1' => 'com1',
'param2' => 'com2',
'param3' => 'com3', // not defined in COM
'param4' => 'com4', // not defined in COM
'param5' => 'com5' // not defined in COM, no DEFAULT
]
);
?>
object(ILLI\Core\MockDeepDeep)#6 (6) {
["param1":protected]=>
string(48) "com1:ILLI\Core\MockDeepDeep::aspectableSetParam1"
["param2":protected]=>
string(4) "com2"
["param3":protected]=>
string(17) "MockDeepDeep:val3"
["param4":protected]=>
string(17) "MockDeepDeep:val4"
["param5":protected]=>
NULL
["__initConfig":protected]=>
array(11) {
["ILLI\Core\I_Proto::DI_CLASS"]=>
array(5) {
["baz"]=>
string(3) "foo"
["alice"]=>
string(22) "ILLI\Core\MockDeepDeep"
["tiffany"]=>
string(18) "ILLI\Core\MockDeep"
["foobar"]=>
string(22) "ILLI\Core\MockDeepDeep"
["new"]=>
string(6) "append"
}
["ILLI\Core\I_Proto::DI_RUN"]=>
bool(true)
["ILLI\Core\I_Proto::DI_MAIN"]=>
string(6) "__main"
["ILLI\Core\I_Proto::DI_DELEGATE"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_FILTER"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_METHOD"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_OBSERVER"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_METHOD_PROTO"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_SIGNAL"]=>
array(0) {
}
["ILLI\Core\I_Proto::DI_TO"]=>
array(2) {
["string"]=>
string(8) "toString"
["array"]=>
string(7) "toArray"
}
["param5"]=>
string(4) "com5"
}
}
Comments