Exemple #1
0
 /**
  * testMax().
  */
 public function testMax()
 {
     $data = array(4, 2, 7, 9, 1, 3, 6, 5, 8);
     $actual = Ginq::from($data)->max();
     $this->assertEquals(9, $actual);
     $data = new \IteratorIterator(new \ArrayIterator($data));
     $actual = Ginq::from($data)->max();
     $this->assertEquals(9, $actual);
     $data = array(array('name' => 'Abe Shinji', 'score' => 2990), array('name' => 'Suzuki Taro', 'score' => 10200), array('name' => 'Yamada Taro', 'score' => 680), array('name' => 'Tamura Akira', 'score' => 5840), array('name' => 'Tanaka Ichiro', 'score' => 8950), array('name' => 'Yamada Rindai', 'score' => 6680), array('name' => 'Suzuka Youichi', 'score' => 6780), array('name' => 'Muraoka Kouhei', 'score' => 1950));
     $actual = Ginq::from($data)->max('[score]');
     $this->assertEquals(10200, $actual);
     $actual = Ginq::from(array(4, 2, 7, 9, 1, 3, 6, 5, 8))->max(null, function ($v1, $v2) {
         return Ginq::compare($v1, $v2);
     });
     $this->assertEquals(9, $actual);
     $actual = Ginq::from(array(4, 2, 7, 9, 1, 3, 6, 5, 8))->max(null, array('v1,v2' => 'v1 - v2'));
     $this->assertEquals(9, $actual);
     $actual = Ginq::from($data)->max('[score]', function ($v1, $v2) {
         return Ginq::compare($v1, $v2);
     });
     $this->assertEquals(10200, $actual);
 }