public function test()
{
$this->assertSame(['methodValue', 'methodValue', 'methodValue'], invoke($this->list, 'method', [1, 2]));
$this->assertSame(['methodValue', 'methodValue', 'methodValue'], invoke($this->listIterator, 'method'));
$this->assertSame([null, null, null], invoke($this->list, 'undefinedMethod'));
$this->assertSame([null, null, null], invoke($this->list, 'setExpectedExceptionFromAnnotation'), 'Protected method');
$this->assertSame([[1, 2], [1, 2], [1, 2]], invoke($this->list, 'returnArguments', [1, 2]));
$this->assertSame(['k1' => 'methodValue', 'k2' => 'methodValue'], invoke($this->keyArray, 'method'));
$this->assertSame(['k1' => 'methodValue', 'k2' => 'methodValue'], invoke($this->keyIterator, 'method'));
}