/** * getInstance() のテストです. 以下を確認します. * * - UnixTimeFormat オブジェクトを返す * - 複数回実行した際に同一のオブジェクトを返す * * @covers Peach\DT\UnixTimeFormat::getInstance */ public function testGetInstance() { $f1 = UnixTimeFormat::getInstance(); $f2 = UnixTimeFormat::getInstance(); $this->assertInstanceOf("Peach\\DT\\UnixTimeFormat", $f1); $this->assertSame($f1, $f2); }
/** * システム時刻と同じ unix time をあらわす Timestamp オブジェクトを返すことを確認します. * * @covers Peach\DT\DefaultClock::getUnixTime * @covers Peach\DT\Clock::getTimestamp */ public function testGetTimestamp() { $obj = DefaultClock::getInstance(); $now = UnixTimeFormat::getInstance()->parseTimestamp(time()); $result = $obj->getTimestamp(); $this->assertEquals($now, $result); }
/** * コンストラクタの第 2 引数の Clock オブジェクトを基準として現在時刻が移動することを確認します. * * @covers Peach\DT\OffsetClock::__construct * @covers Peach\DT\OffsetClock::getUnixTime * @covers Peach\DT\Clock::getTimestamp */ public function testGetTimestamp() { $base = new FixedClock(1234567890); $obj = new OffsetClock(1800, $base); $date1 = $obj->getTimestamp(); $shift = 1234567890 + 1800; $date2 = UnixTimeFormat::getInstance()->parseTimestamp($shift); $this->assertEquals($date2, $date1); }
/** * {@link Peach\DT\Clock::getUnixTime} で取得した値を使って * Timestamp インスタンスを生成します. * * @return Timestamp */ public function getTimestamp() { $ms = $this->getUnixTime(); return UnixTimeFormat::getInstance()->parseTimestamp($ms); }