* fix: eslint operator-linebreak issue * fix: eslint quotes issue * fix: react jsx indent and props issues * fix: eslint trailing spaces issues * fix: eslint line around directives issue * fix: eslint semi rule * fix: eslint newline per chain rule * fix: eslint space infix ops rule * fix: eslint space-in-parens issue * fix: eslint space before function paren issue * fix: eslint space before blocks issue * fix: eslint arrow body style issue * fix: eslint dot-location issue * fix: eslint quotes issue * fix: eslint quote props issue * fix: eslint operator assignment issue * fix: eslint new line after import issue * fix: indent issues * fix: operator assignment issue * fix: all autofixable eslint issues * fix: all react related fixable issues * fix: autofixable eslint issues * chore: remove all template literals * fix: remaining autofixable issues * chore: apply amnesty on all existing issues * fix: failing xss-lint issues * refactor: apply amnesty on remaining issues * refactor: apply amnesty on new issues * fix: remove file level suppressions * refactor: apply amnesty on new issues
58 lines
2.0 KiB
JavaScript
58 lines
2.0 KiB
JavaScript
'use strict';
|
|
|
|
import * as Time from 'time.js';
|
|
|
|
describe('Time', function() {
|
|
describe('format', function() {
|
|
describe('with NAN', function() {
|
|
it('return a correct time format', function() {
|
|
expect(Time.format('string')).toEqual('0:00');
|
|
// eslint-disable-next-line no-void
|
|
expect(Time.format(void 0)).toEqual('0:00');
|
|
});
|
|
});
|
|
|
|
describe('with duration more than or equal to 1 hour', function() {
|
|
it('return a correct time format', function() {
|
|
expect(Time.format(3600)).toEqual('1:00:00');
|
|
expect(Time.format(7272)).toEqual('2:01:12');
|
|
});
|
|
});
|
|
|
|
describe('with duration less than 1 hour', function() {
|
|
it('return a correct time format', function() {
|
|
expect(Time.format(1)).toEqual('0:01');
|
|
expect(Time.format(61)).toEqual('1:01');
|
|
expect(Time.format(3599)).toEqual('59:59');
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('formatFull', function() {
|
|
it('gives correct string for times', function() {
|
|
var testTimes = [
|
|
[0, '00:00:00'], [60, '00:01:00'],
|
|
[488, '00:08:08'], [2452, '00:40:52'],
|
|
[3600, '01:00:00'], [28800, '08:00:00'],
|
|
[144532, '40:08:52'], [190360, '52:52:40'],
|
|
[294008, '81:40:08'], [-5, '00:00:00']
|
|
];
|
|
|
|
$.each(testTimes, function(index, times) {
|
|
var timeInt = times[0],
|
|
timeStr = times[1];
|
|
|
|
expect(Time.formatFull(timeInt)).toBe(timeStr);
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('convert', function() {
|
|
it('return a correct time based on speed modifier', function() {
|
|
expect(Time.convert(0, 1, 1.5)).toEqual('0.000');
|
|
expect(Time.convert(100, 1, 1.5)).toEqual('66.667');
|
|
expect(Time.convert(100, 1.5, 1)).toEqual('150.000');
|
|
});
|
|
});
|
|
});
|