public function testPartial()
{
$sqrList = partial('array_map', function ($v) {
return $v * $v;
});
$this->assertEquals([1, 4, 9], $sqrList([1, 2, 3]));
$this->assertEquals([], $sqrList([]));
$oneArgFuncPartial = partial('count', [1, 2, 3]);
$this->assertEquals(3, $oneArgFuncPartial());
$noArgFuncPartial = partial('time', null);
$this->assertEquals(time(), $noArgFuncPartial(), '', 0.1);
$sqrList = call_user_func(partial, 'array_map', function ($v) {
return $v * $v;
});
$this->assertEquals([1, 4, 9], $sqrList([1, 2, 3]));
$this->assertEquals([], $sqrList([]));
$this->assertEquals('\\nspl\\f\\partial', partial);
}