tests_image_windowLevel.test.js
import {
validateWindowLevel,
WindowLevel
} from '../../src/image/windowLevel.js';
/**
* Tests for the 'image/windowLevel.js' file.
*/
/* global QUnit */
QUnit.module('image');
/**
* Tests for {@link WindowLevel}.
*
* @function module:tests/image~windowlevel
*/
QUnit.test('WindowLevel class', function (assert) {
const wcaw00 = new WindowLevel(0, 2);
assert.equal(wcaw00.center, 0, 'Window level getCenter #00');
assert.equal(wcaw00.width, 2, 'Window level getWidth #00');
// width 0 will NOT be forced to 1
const wcaw01 = new WindowLevel(1, 0);
assert.equal(wcaw01.center, 1, 'Window level getCenter #01');
assert.equal(wcaw01.width, 0, 'Window level getWidth #01');
});
/**
* Tests for validateWindowLevel.
*
* @function module:tests/image~validateWindowLevel
*/
QUnit.test('validateWindowLevel.', function (assert) {
const range0 = {min: 0, max: 10};
const wl00 = new WindowLevel(5, 1);
const wl01 = validateWindowLevel(wl00, range0);
assert.equal(wl01.center, wl00.center, 'Validate center #00');
assert.equal(wl01.width, wl00.width, 'Validate width #00');
const wl10 = new WindowLevel(5, 10);
const wl11 = validateWindowLevel(wl10, range0);
assert.equal(wl11.center, wl10.center, 'Validate center #10');
assert.equal(wl11.width, wl10.width, 'Validate width #10');
const wl20 = new WindowLevel(5, 0);
const wl21 = validateWindowLevel(wl20, range0);
assert.equal(wl21.center, wl20.center, 'Validate center #20');
assert.equal(wl21.width, 1, 'Validate zero width #20');
const wl30 = new WindowLevel(5, -1);
const wl31 = validateWindowLevel(wl30, range0);
assert.equal(wl31.center, wl30.center, 'Validate center #30');
assert.equal(wl31.width, 1, 'Validate negative width #30');
});