Ejemplo n.º 1
0
 /**
  * @param callable $callback
  * @param mixed|null $initial
  * @return mixed
  */
 public function reduce(callable $callback, $initial = null)
 {
     $items = $this->toArray();
     return Arrays::reduce($items, $callback, $initial);
 }
Ejemplo n.º 2
0
 /**
  * @dataProvider dataReduceProvider
  *
  * @param $callback
  * @param $initial
  * @param $array
  * @param $expect
  */
 public function testReduce($callback, $initial, $array, $expect)
 {
     $actual = Arrays::reduce($array, $callback, $initial);
     $this->assertEquals($expect, $actual);
     $this->assertEquals(json_encode($expect), json_encode($actual));
 }
Ejemplo n.º 3
0
 /**
  * @dataProvider callbackDataProvider
  *
  * @param $method
  * @param $callback
  * @param $expect
  * @param $value
  * @param $key
  */
 public function testCallbacks($method, $callback, $initial, $expect, $value, $key = null)
 {
     $actual = Arrays::reduce($value, $callback, $initial);
     $this->assertEquals($expect, $actual, $method);
 }