/** * @dataProvider simpleArrayProvider */ public function testWalkRecursively(array $array) { $callable = function (&$value, $key) { $value = $key; }; $ma = new ImmutableArray($array); $copiedMa = $ma->walk($callable, true); array_walk_recursive($array, $callable); $this->assertTrue($copiedMa !== $ma); $this->assertTrue($array === $copiedMa->toArray()); }
/** * @dataProvider simpleArrayProvider * * @param array $array */ public function testWalkRecursively(array $array) { $callable = function (&$value, $key) { $value = $key; }; $arrayzy = new A($array); $resultArrayzy = $arrayzy->walk($callable, true); $resultArray = $array; array_walk_recursive($resultArray, $callable); $this->assertImmutable($arrayzy, $resultArrayzy, $array, $resultArray); }