mirror of
https://github.com/scratchfoundation/scratch-www.git
synced 2025-03-14 15:09:59 -04:00
Change time library to default to 1 minute when the time remaining is less than 30 seconds.
This commit is contained in:
parent
63494a0069
commit
b8cc0b2b83
2 changed files with 11 additions and 2 deletions
|
@ -18,8 +18,10 @@ const getTimeUnitAndDuration = timeStamp => {
|
|||
unit = 'hour';
|
||||
duration = diff / oneHourInMs;
|
||||
}
|
||||
// Round to nearest hour or minute.
|
||||
duration = Math.round(duration);
|
||||
// Round to nearest hour or minute, but always have at least 1
|
||||
// so we don't show something like "0 minutes". Hours isn't
|
||||
// affected by the math.max because we choose minutes up to 2 hours.
|
||||
duration = Math.max(1, Math.round(duration));
|
||||
return {
|
||||
unit: unit,
|
||||
duration: duration
|
||||
|
|
|
@ -26,6 +26,13 @@ describe('unit test lib/format-time.js', () => {
|
|||
expect(mockFormatExpression.format).toHaveBeenCalledWith(2, 'minute');
|
||||
});
|
||||
|
||||
test('test timestamp that is 15 seconds in the future displays 1', () => {
|
||||
const fifteenSec = 15 * 1000;
|
||||
mockFormatExpression.format.mockReturnValue('in 1 minute');
|
||||
format.formatRelativeTime(fifteenSec, 'en');
|
||||
expect(mockFormatExpression.format).toHaveBeenCalledWith(1, 'minute');
|
||||
});
|
||||
|
||||
test('test rounding timestamp that is 4.4 minutes rounds to 4', () => {
|
||||
const fourPlusMin = 4.4 * 60 * 1000;
|
||||
mockFormatExpression.format.mockReturnValue('in 4 minutes');
|
||||
|
|
Loading…
Reference in a new issue