Files
threshold-ui/addons/core/tests/unit/utils/seconds-to-duration-test.js
Lisbet Alvarez 3ba93927fe Update copyright headers (#3146)
* empty commit

* Add missing copyright headers

* chore: 🤖 update copywrite config file with correct year

* Add missing copyright headers

* empty commit (gh action merge checks are stuck)
2026-01-28 17:09:06 -08:00

80 lines
2.4 KiB
JavaScript

/**
* Copyright IBM Corp. 2021, 2026
* SPDX-License-Identifier: BUSL-1.1
*/
import { secondsToDuration } from 'core/utils/seconds-to-duration';
import { module, test } from 'qunit';
module('Unit | Utility | seconds-to-duration', function () {
test('it handles 0 correctly', function (assert) {
const result = secondsToDuration(0);
assert.strictEqual(result.seconds, 0);
assert.strictEqual(result.minutes, 0);
assert.strictEqual(result.hours, 0);
assert.strictEqual(result.days, 0);
assert.strictEqual(result.weeks, 0);
});
test('it converts seconds correctly', function (assert) {
const result = secondsToDuration(45);
assert.strictEqual(result.seconds, 45);
assert.strictEqual(result.minutes, 0);
assert.strictEqual(result.hours, 0);
assert.strictEqual(result.days, 0);
assert.strictEqual(result.weeks, 0);
});
test('it converts minutes correctly', function (assert) {
const result = secondsToDuration(100);
assert.strictEqual(result.seconds, 40);
assert.strictEqual(result.minutes, 1);
assert.strictEqual(result.hours, 0);
assert.strictEqual(result.days, 0);
assert.strictEqual(result.weeks, 0);
});
test('it converts hours correctly', function (assert) {
const result = secondsToDuration(5000);
assert.strictEqual(result.seconds, 20);
assert.strictEqual(result.minutes, 23);
assert.strictEqual(result.hours, 1);
assert.strictEqual(result.days, 0);
assert.strictEqual(result.weeks, 0);
});
test('it converts days correctly', function (assert) {
const result = secondsToDuration(500000);
assert.strictEqual(result.seconds, 20);
assert.strictEqual(result.minutes, 53);
assert.strictEqual(result.hours, 18);
assert.strictEqual(result.days, 5);
assert.strictEqual(result.weeks, 0);
});
test('it converts weeks correctly', function (assert) {
const result = secondsToDuration(800000);
assert.strictEqual(result.seconds, 20);
assert.strictEqual(result.minutes, 13);
assert.strictEqual(result.hours, 6);
assert.strictEqual(result.days, 2);
assert.strictEqual(result.weeks, 1);
});
test('it handles negative values', function (assert) {
const result = secondsToDuration(-800000);
assert.strictEqual(result.seconds, 0);
assert.strictEqual(result.minutes, 0);
assert.strictEqual(result.hours, 0);
assert.strictEqual(result.days, 0);
assert.strictEqual(result.weeks, 0);
});
});