/** * @dataProvider simpleArrayProvider */ public function testFilter(array $array) { $callable = function ($value) { return 2 !== $value; }; $filteredArray = array_filter($array, $callable); $ma = new ImmutableArray($array); $copiedMa = $ma->filter($callable); $this->assertTrue($copiedMa !== $ma); $this->assertTrue($filteredArray === $copiedMa->toArray()); }
/** * @dataProvider simpleArrayProvider * * @param array $array */ public function testFilter(array $array) { $callable = function ($value) { return 2 !== $value; }; $arrayzy = new A($array); $resultArrayzy = $arrayzy->filter($callable); $resultArray = array_filter($array, $callable); $this->assertImmutable($arrayzy, $resultArrayzy, $array, $resultArray); }