Add unit tests for ColorContrastCache
This commit is contained in:
@@ -84,8 +84,6 @@ export function contrastRatio(l1: number, l2: number): number {
|
|||||||
return (l1 + 0.05) / (l2 + 0.05);
|
return (l1 + 0.05) / (l2 + 0.05);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Cache [bg][fg]: result, should probably be owned by ColorManager?
|
|
||||||
|
|
||||||
function rgbaToColor(r: number, g: number, b: number): IColor {
|
function rgbaToColor(r: number, g: number, b: number): IColor {
|
||||||
return {
|
return {
|
||||||
css: toCss(r, g, b),
|
css: toCss(r, g, b),
|
||||||
|
|||||||
@@ -0,0 +1,43 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) 2017 The xterm.js authors. All rights reserved.
|
||||||
|
* @license MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { assert } from 'chai';
|
||||||
|
import { ColorContrastCache } from 'browser/ColorContrastCache';
|
||||||
|
|
||||||
|
describe('ColorContrastCache', () => {
|
||||||
|
let cache: ColorContrastCache;
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
cache = new ColorContrastCache();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should save and get color values', () => {
|
||||||
|
assert.strictEqual(cache.getColor(0x01, 0x00), undefined);
|
||||||
|
cache.setColor(0x01, 0x01, null);
|
||||||
|
assert.strictEqual(cache.getColor(0x01, 0x01), null);
|
||||||
|
cache.setColor(0x01, 0x02, { css: '#030303', rgba: 0x030303ff});
|
||||||
|
assert.deepEqual(cache.getColor(0x01, 0x02), { css: '#030303', rgba: 0x030303ff});
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should save and get css values', () => {
|
||||||
|
assert.strictEqual(cache.getCss(0x01, 0x00), undefined);
|
||||||
|
cache.setCss(0x01, 0x01, null);
|
||||||
|
assert.strictEqual(cache.getCss(0x01, 0x01), null);
|
||||||
|
cache.setCss(0x01, 0x02, '#030303');
|
||||||
|
assert.deepEqual(cache.getCss(0x01, 0x02), '#030303');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should clear all values on clear', () => {
|
||||||
|
cache.setColor(0x01, 0x01, null);
|
||||||
|
cache.setColor(0x01, 0x02, { css: '#030303', rgba: 0x030303ff});
|
||||||
|
cache.setCss(0x01, 0x01, null);
|
||||||
|
cache.setCss(0x01, 0x02, '#030303');
|
||||||
|
cache.clear();
|
||||||
|
assert.strictEqual(cache.getColor(0x01, 0x01), undefined);
|
||||||
|
assert.strictEqual(cache.getColor(0x01, 0x02), undefined);
|
||||||
|
assert.strictEqual(cache.getCss(0x01, 0x01), undefined);
|
||||||
|
assert.strictEqual(cache.getCss(0x01, 0x02), undefined);
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user