/** * test for getWeek */ public function testGetWeek() { $locale = new Locale('de_AT'); $date = new Date(1168293600, $locale); //Tuesday $date->addDay(1); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Wednesday $date->addDay(1); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Thursday $date->addDay(1); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Friday $date->addDay(1); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Friday 05:30 am $date->addTime('05:30:00'); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Saturday $date->addDay(1); $this->assertSame('08.01.1970 05:00:00', $date->getWeek()->toString()); //Saturday [ar_EG] // The right value for AM/PM has to be set in arabic letters $this->assertSame('08/01/1970 5:00:00 ص', $date->getWeek('ar_EG')->toString()); $date->setTimeZone('UTC'); $this->assertSame('08/01/1970 12:00:00 ص', $date->getWeek('ar_EG')->toString()); $date->setTimeZone('Indian/Maldives'); $this->assertSame('08/01/1970 5:00:00 ص', $date->getWeek('ar_EG')->toString()); //Sunday [start of a new week as defined per ISO 8601] $date->addDay(1); $this->assertSame('15.01.1970 05:00:00', $date->getWeek()->toString()); //Monday $date->addDay(1); $this->assertSame('15.01.1970 05:00:00', $date->getWeek()->toString()); //Monday 03:45 pm $date->addTime('15:45:00'); $this->assertSame('15.01.1970 05:00:00', $date->getWeek()->toString()); }