diff --git a/privacy/classes/local/request/transform.php b/privacy/classes/local/request/transform.php index 34a3bd15ad9f4..48c38658b3f8a 100644 --- a/privacy/classes/local/request/transform.php +++ b/privacy/classes/local/request/transform.php @@ -64,7 +64,7 @@ public static function datetime($datetime) { * @return string The translated string. */ public static function date($date) { - return userdate($date, get_string('strftimetime', 'langconfig')); + return userdate($date, get_string('strftimedate', 'langconfig')); } /** diff --git a/privacy/tests/request_transform_test.php b/privacy/tests/request_transform_test.php index 15876adc19bdd..3926f5f1aedc9 100644 --- a/privacy/tests/request_transform_test.php +++ b/privacy/tests/request_transform_test.php @@ -53,14 +53,37 @@ public function test_user() { * Test that the datetime is translated into a string. */ public function test_datetime() { - $this->assertInternalType('string', transform::datetime(1)); + $time = 1; + + $datestr = transform::datetime($time); + + // Assert it is a string. + $this->assertInternalType('string', $datestr); + + // To prevent failures on MAC where we are returned with a lower-case 'am' we want to convert this to 'AM'. + $datestr = str_replace('am', 'AM', $datestr); + + // Assert the formatted date is correct. + $dateobj = new DateTime(); + $dateobj->setTimestamp($time); + $this->assertEquals($dateobj->format('l, j F Y, g:i A'), $datestr); } /** * Test that the date is translated into a string. */ public function test_date() { - $this->assertInternalType('string', transform::date(1)); + $time = 1; + + $datestr = transform::date($time); + + // Assert it is a string. + $this->assertInternalType('string', $datestr); + + // Assert the formatted date is correct. + $dateobj = new DateTime(); + $dateobj->setTimestamp($time); + $this->assertEquals($dateobj->format('j F Y'), $datestr); } /**