@ -46,7 +46,6 @@ class Test_TemplateFunctions extends PHPUnit_Framework_TestCase {
$this->assertEquals("This is a good string!", $result);
}
public function testPrintUnescaped() {
$htmlString = "< script > alert ( 'xss' ) ; < / script > ";
@ -66,5 +65,194 @@ class Test_TemplateFunctions extends PHPUnit_Framework_TestCase {
$this->assertEquals("This is a good string!", $result);
}
// ---------------------------------------------------------------------------
// Test relative_modified_date with dates only
// ---------------------------------------------------------------------------
public function testRelativeDateToday(){
$currentTime = 1380703592;
$elementTime = $currentTime;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('today', $result);
// 2 hours ago is still today
$elementTime = $currentTime - 2 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('today', $result);
}
public function testRelativeDateYesterday(){
$currentTime = 1380703592;
$elementTime = $currentTime - 24 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('yesterday', $result);
// yesterday - 2 hours is still yesterday
$elementTime = $currentTime - 26 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('yesterday', $result);
}
public function testRelativeDate2DaysAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 48 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('2 days ago', $result);
// 2 days ago minus 4 hours is still 2 days ago
$elementTime = $currentTime - 52 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('2 days ago', $result);
}
public function testRelativeDateLastMonth(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 31;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('last month', $result);
$elementTime = $currentTime - 86400 * 35;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('last month', $result);
}
public function testRelativeDateMonthsAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 60;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('2 months ago', $result);
$elementTime = $currentTime - 86400 * 65;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('2 months ago', $result);
}
public function testRelativeDateLastYear(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 365;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('last year', $result);
$elementTime = $currentTime - 86400 * 450;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('last year', $result);
}
public function testRelativeDateYearsAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 365.25 * 2;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('years ago', $result);
$elementTime = $currentTime - 86400 * 365.25 * 3;
$result = (string)relative_modified_date($elementTime, $currentTime, true);
$this->assertEquals('years ago', $result);
}
// ---------------------------------------------------------------------------
// Test relative_modified_date with timestamps only (date + time value)
// ---------------------------------------------------------------------------
public function testRelativeTimeSecondsAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 5;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('seconds ago', $result);
}
public function testRelativeTimeMinutesAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 190;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('3 minutes ago', $result);
}
public function testRelativeTimeHoursAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 7500;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('2 hours ago', $result);
}
public function testRelativeTime2DaysAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 48 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('2 days ago', $result);
// 2 days ago minus 4 hours is still 2 days ago
$elementTime = $currentTime - 52 * 3600;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('2 days ago', $result);
}
public function testRelativeTimeLastMonth(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 31;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('last month', $result);
$elementTime = $currentTime - 86400 * 35;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('last month', $result);
}
public function testRelativeTimeMonthsAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 60;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('2 months ago', $result);
$elementTime = $currentTime - 86400 * 65;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('2 months ago', $result);
}
public function testRelativeTimeLastYear(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 365;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('last year', $result);
$elementTime = $currentTime - 86400 * 450;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('last year', $result);
}
public function testRelativeTimeYearsAgo(){
$currentTime = 1380703592;
$elementTime = $currentTime - 86400 * 365.25 * 2;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('years ago', $result);
$elementTime = $currentTime - 86400 * 365.25 * 3;
$result = (string)relative_modified_date($elementTime, $currentTime, false);
$this->assertEquals('years ago', $result);
}
}