public function testPlus()
{
// Provided as number of seconds
$time = Time::get('2005-04-05 00:00:00');
$this->assertEquals(Time::get('2005-04-05 00:00:10'), $time->plus(10));
$this->assertEquals(Time::get('2005-04-05 00:01:00'), $time->plus(60));
$this->assertEquals(Time::get('2005-04-05 02:00:00'), $time->plus(2 * 3600));
$this->assertEquals(Time::get('2005-04-06 00:00:00'), $time->plus(24 * 3600));
$this->assertEquals(Time::get('2005-05-05 00:00:00'), $time->plus(30 * 24 * 3600));
$this->assertEquals(Time::get('2006-04-05 00:00:00'), $time->plus(365 * 24 * 3600));
// Provided as string
$this->assertEquals(Time::get('2005-04-06 00:00:00'), $time->plus('1 day'));
$this->assertEquals(Time::get('2005-06-05 00:00:00'), $time->plus('2 months'));
$this->assertEquals(Time::get('2008-04-05 00:00:00'), $time->plus('3 year'));
// Time zone settings
$timeZone = new \DateTimeZone($time->getTimeZone()->getName() == 'Europe/Prague' ? 'America/Santiago' : 'Europe/Prague');
$time->setTimeZone($timeZone);
$time2 = $time->plus(86400);
$this->assertSame($time->getTimeZone()->getName(), $time2->getTimeZone()->getName());
}