Testing Number Constraint Utilities in Video.js
This test suite validates the numerical utility functions in Video.js, specifically focusing on the clamp function that ensures values stay within defined boundaries. The tests verify proper number constraints and edge case handling for the core math operations.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
videojs/videoJs
test/unit/utils/num.test.js
/* eslint-env qunit */
import * as Num from '../../../src/js/utils/num';
QUnit.module('utils/num', function() {
QUnit.module('clamp');
QUnit.test('keep a number between min/max values', function(assert) {
assert.expect(5);
assert.strictEqual(Num.clamp(5, 1, 10), 5);
assert.strictEqual(Num.clamp(5, 1, 5), 5);
assert.strictEqual(Num.clamp(5, 1, 2), 2);
assert.strictEqual(Num.clamp(-1, 1, 10), 1);
assert.strictEqual(Num.clamp(NaN, 1, 10), 1);
});
});