/** * @param string $unit * @return Time|null */ public function findIn($unit) { if ($unit === $this->getUnit()) { return clone $this; } $bonus = $this->timeTable->toBonus($this); return $this->timeTable->hasTimeFor($bonus, $unit) ? $this->timeTable->toTime($bonus, $unit) : null; }
/** * @test * @expectedException \OutOfRangeException */ public function I_can_not_convert_too_high_value_to_bonus() { $timeTable = new TimeTable(); $timeTable->toBonus(new Time(91, Time::ROUND, $timeTable))->getValue(); }
/** * @param string|null $wantedUnit * @return Time|null */ public function findTime($wantedUnit = null) { /** @noinspection ExceptionsAnnotatingAndHandlingInspection */ return $this->timeTable->hasTimeFor($this, $wantedUnit) ? $this->timeTable->toTime($this, $wantedUnit) : null; }