/** * 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); }