/** * {@link Arrays::min} のテストです. * 以下を確認します. * * - 与えられた配列の中で一番小さな値を返すこと * - Comparable を実装しているオブジェクトの場合, compareTo() メソッドを使って大小を比較すること * - 空の配列が指定された場合は null を返すこと * - Comparator が指定された場合はその Comparator の仕様に従って比較すること * * @covers Peach\Util\Arrays::min * @covers Peach\Util\Arrays::getTop */ public function testMin() { $test1 = array(5, 1, 3, 10, -10); $this->assertSame(-10, Arrays::min($test1)); $test2 = array(new ArraysTest_C(150, "ABC"), new ArraysTest_C(100, "XYZ"), new ArraysTest_C(150, "DEF"), new ArraysTest_C(125, "MNG")); $this->assertEquals($test2[1], Arrays::min($test2)); $this->assertNull(Arrays::min(array())); $comparator = new ArraysTest_Comparator(); $result = Arrays::min(array("three", "one", "five", "two", "four"), $comparator); $this->assertSame("one", $result); }