Exemple #1
0
 /**
  * testIterate
  */
 public function testIterate()
 {
     $actual = Ginq::iterate(1, array('x' => 'x+1'))->take(5)->toList();
     $this->assertEquals(array(1, 2, 3, 4, 5), $actual);
     $called = 0;
     $actual = Ginq::iterate(1, function ($x) use(&$called) {
         $called++;
         return $x + 1;
     })->take(5)->toList();
     $this->assertEquals(array(1, 2, 3, 4, 5), $actual);
     $this->assertEquals(4, $called);
     $called = 0;
     $actual = Ginq::iterate(1, function ($x) use(&$called) {
         $called++;
         return $x + 1;
     })->take(1)->toList();
     $this->assertEquals(array(1), $actual);
     $this->assertEquals(0, $called);
 }