public function testFilter()
{
$this->assertEquals([1, 2, 3], filter('is_numeric', ['a', 1, 'b', 2, 'c', 3]));
$this->assertEquals(array('b' => 2), filter(function ($v) {
return $v % 2 === 0;
}, array('a' => 1, 'b' => 2, 'c' => 3)));
$this->assertEquals([], filter('is_int', []));
$this->assertEquals([1, 2, 3], call_user_func(filter, 'is_numeric', ['a', 1, 'b', 2, 'c', 3]));
$this->assertEquals('\\nspl\\a\\filter', filter);
}