github.com/zoomfoo/nomad@v0.8.5-0.20180907175415-f28fd3a1a056/ui/tests/unit/utils/format-duration-test.js (about) 1 import { module, test } from 'ember-qunit'; 2 import formatDuration from 'nomad-ui/utils/format-duration'; 3 4 module('Unit | Util | formatDuration'); 5 6 test('When all units have values, all units are displayed', function(assert) { 7 const expectation = '39 years 1 month 13 days 23h 31m 30s 987ms 654µs 400ns'; 8 assert.equal(formatDuration(1234567890987654321), expectation, expectation); 9 }); 10 11 test('Any unit without values gets dropped from the display', function(assert) { 12 const expectation = '14 days 6h 56m 890ms 980µs'; 13 assert.equal(formatDuration(1234560890980000), expectation, expectation); 14 }); 15 16 test('The units option allows for units coarser than nanoseconds', function(assert) { 17 const expectation1 = '1s 200ms'; 18 const expectation2 = '20m'; 19 const expectation3 = '1 month 1 day'; 20 assert.equal(formatDuration(1200, 'ms'), expectation1, expectation1); 21 assert.equal(formatDuration(1200, 's'), expectation2, expectation2); 22 assert.equal(formatDuration(32, 'd'), expectation3, expectation3); 23 }); 24 25 test('When duration is 0, 0 is shown in terms of the units provided to the function', function(assert) { 26 assert.equal(formatDuration(0), '0ns', 'formatDuration(0) -> 0ns'); 27 assert.equal(formatDuration(0, 'year'), '0 years', 'formatDuration(0, "year") -> 0 years'); 28 });