/** * 以下の確認を行います. * * - 年・月・日のフィールドの設定が出来る * - 不正な引数を指定した場合は同じオブジェクトを返す */ public function testSet() { $time = new Date(2012, 5, 21); $this->assertEquals(array(new Date(2013, 5, 21), new Date(0, 5, 21), new Date(999, 5, 21), new Date(9999, 5, 21)), array($time->set("y", 2013), $time->set("y", 10000), $time->set("y", 999), $time->set("y", -1))); $this->assertEquals(array(new Date(2012, 10, 21), new Date(2013, 1, 21), new Date(2014, 2, 21), new Date(2011, 12, 21), new Date(2010, 11, 21)), array($time->set("mo", 10), $time->set("mo", 13), $time->set("mo", 26), $time->set("mo", 0), $time->set("mo", -13))); $this->assertEquals(array(new Date(2012, 6, 1), new Date(2012, 4, 30), new Date(2012, 4, 1), new Date(2012, 7, 3), new Date(2012, 3, 2)), array($time->set("d", 32), $time->set("d", 0), $time->set("d", -29), $time->set("d", 64), $time->set("d", -59))); $this->assertEquals($time, $time->set("foobar", 10)); }