UNPKG

@villedemontreal/general-utils

Version:
62 lines (43 loc) 1.57 kB
import { assert } from 'chai'; import { Timer } from './timer'; import { utils } from './utils'; // ========================================== // Timer object tests // ========================================== describe('Timer object', () => { it('Milliseconds', async function () { this.timeout(4000); const timer = new Timer(); let milliSecs = timer.getMillisecondsElapsed(); assert.isNotNaN(milliSecs); assert.isTrue(milliSecs < 1000); await utils.sleep(1010); milliSecs = timer.getMillisecondsElapsed(); assert.isNotNaN(milliSecs); assert.isTrue(milliSecs > 1000 && milliSecs < 2000, `was "${milliSecs}"`); await utils.sleep(1001); milliSecs = timer.getMillisecondsElapsed(); assert.isNotNaN(milliSecs); assert.isTrue(milliSecs > 2000, `was "${milliSecs}"`); }); it('Default format', async function () { this.timeout(4000); const timer = new Timer(); await utils.sleep(1010); let elapsed = timer.toString(); assert.isTrue(elapsed.startsWith('00:00:01.'), `was "${elapsed}"`); await utils.sleep(1010); elapsed = timer.toString(); assert.isTrue(elapsed.startsWith('00:00:02.'), `was "${elapsed}"`); }); it('Custom format', async function () { this.timeout(4000); const timer = new Timer(); await utils.sleep(1010); let elapsed = timer.toString('s'); assert.strictEqual(elapsed, '1', `was "${elapsed}"`); await utils.sleep(1010); elapsed = timer.toString('s'); assert.strictEqual(elapsed, '2', `was "${elapsed}"`); }); });