zulip/web/tests/colorspace.test.js

40 lines
1.1 KiB
JavaScript
Raw Normal View History

"use strict";
const {strict: assert} = require("assert");
const {zrequire} = require("./lib/namespace");
const {run_test} = require("./lib/test");
const colorspace = zrequire("colorspace");
run_test("sRGB_to_linear", () => {
let srgb_color = 0.0042;
let expected_value = 0.0042 / 255 / 12.92;
let actual_value = colorspace.sRGB_to_linear(srgb_color);
assert.equal(actual_value, expected_value);
srgb_color = 255;
expected_value = 1;
actual_value = colorspace.sRGB_to_linear(srgb_color);
assert.equal(actual_value, expected_value);
});
run_test("rgb_luminance", () => {
const channel = [1, 1, 1];
const expected_value = 1;
const actual_value = colorspace.rgb_luminance(channel);
assert.equal(actual_value, expected_value);
});
run_test("luminance_to_lightness", () => {
let luminance = 0;
let expected_value = (116 * 4) / 29 - 16;
let actual_value = colorspace.luminance_to_lightness(luminance);
assert.equal(actual_value, expected_value);
luminance = 1;
expected_value = 100;
actual_value = colorspace.luminance_to_lightness(luminance);
assert.equal(actual_value, expected_value);
});