/** * Test the creation methods. */ function test_creation() { $epoch = Week::epoch(); $this->assertEqual(strtolower(get_class($epoch)), 'week'); $this->assertEqual($epoch->startYear(), 1900); $this->assertEqual($epoch->startMonth(), 12); $this->assertEqual($epoch->dayOfMonth(), 30); $this->assertEqual($epoch->startMonthName(), 'December'); $start = $epoch->start(); $this->assertEqual($start->hour(), 0); $this->assertEqual($start->minute(), 0); $this->assertEqual($start->second(), 0); $duration = $epoch->duration(); $this->assertTrue($duration->isEqualTo(Duration::withDays(7))); $week = Week::starting(DateAndTime::withYearMonthDayHourMinuteSecondOffset(2005, 5, 4, 15, 25, 10, Duration::withHours(-4))); $this->assertEqual(strtolower(get_class($week)), 'week'); $this->assertEqual($week->startYear(), 2005); $this->assertEqual($week->startMonth(), 5); $this->assertEqual($week->dayOfMonth(), 1); $start = $week->start(); $this->assertEqual($start->hour(), 0); $this->assertEqual($start->minute(), 0); $this->assertEqual($start->second(), 0); $this->assertEqual($week->startMonthName(), 'May'); $duration = $week->duration(); $this->assertEqual($duration->days(), 7); $this->assertTrue($week->isEqualTo(Week::starting(DateAndTime::withYearMonthDayHourMinuteSecondOffset(2005, 5, 3, 15, 25, 10, Duration::withHours(-4))))); }