is-dark-color
Version:
Detects if a hex color is dark or light. It is based on the w3 documentation for color luminance: https://www.w3.org/TR/WCAG20/#relativeluminancedef
58 lines (45 loc) • 1.62 kB
JavaScript
var assert = require('assert');
var expect = require('chai').expect;
var isDarkColor = require('../src/isDarkColor').isDarkColor
describe('isDarkColor', function() {
describe('testing dark colors', function() {
it('should return true for black', function() {
var color = '#000000';
var result = isDarkColor(color);
var expectedResult = true
expect(result).to.equal(expectedResult)
});
it('should return false for green', function() {
var color = '#00ff00';
var result = isDarkColor(color);
var expectedResult = false
expect(result).to.equal(expectedResult)
});
it('should return false for white', function() {
var color = '#ffffff';
var result = isDarkColor(color);
var expectedResult = false
expect(result).to.equal(expectedResult)
});
it('should return true for #872929 - edge case', function() {
var color = '#872929';
var result = isDarkColor(color);
var expectedResult = true
expect(result).to.equal(expectedResult)
});
});
describe('testing overrides', function() {
it('should return true for overriden white', function() {
var color = '#ffffff'
var result = isDarkColor(color, {override: {[color]: true}});
var expectedResult = true
expect(result).to.equal(expectedResult)
})
it('should return false for overriden black', function() {
var color = '#000000'
var result = isDarkColor(color, {override: {[color]: false}});
var expectedResult = false
expect(result).to.equal(expectedResult)
})
})
});