37 lines
1.6 KiB
CoffeeScript
37 lines
1.6 KiB
CoffeeScript
require 'es6-shim'
|
|
vows = require 'vows'
|
|
assert = require 'assert'
|
|
chroma = require '../chroma'
|
|
|
|
vows
|
|
.describe('Some tests for chroma.lch()')
|
|
|
|
.addBatch
|
|
|
|
'lch grayscale':
|
|
topic: ([l,0,0] for l in [0,100,25,50,75])
|
|
'black': (t) -> assert.equal chroma.lch(t[0]).hex(), '#000000'
|
|
'white': (t) -> assert.equal chroma.lch(t[1]).hex(), '#ffffff'
|
|
'gray 1': (t) -> assert.equal chroma.lch(t[2]).hex(), '#3b3b3b'
|
|
'gray 2': (t) -> assert.equal chroma.lch(t[3]).hex(), '#777777'
|
|
'gray 3': (t) -> assert.equal chroma.lch(t[4]).hex(), '#b9b9b9'
|
|
|
|
'lch hues':
|
|
topic: ([50,70,h] for h in [0,60,120,180,240,300])
|
|
'red-ish': (t) -> assert.equal chroma.lch(t[0]).hex(), '#dc2c7a'
|
|
'yellow-ish': (t) -> assert.equal chroma.lch(t[1]).hex(), '#bd5c00'
|
|
'green-ish': (t) -> assert.equal chroma.lch(t[2]).hex(), '#548400'
|
|
'teal-ish': (t) -> assert.equal chroma.lch(t[3]).hex(), '#009175'
|
|
'blue-ish': (t) -> assert.equal chroma.lch(t[4]).hex(), '#008cde'
|
|
'purple-ish': (t) -> assert.equal chroma.lch(t[5]).hex(), '#6f67df'
|
|
|
|
'clipping':
|
|
topic: (chroma.hcl(50, 40, l) for l in [20,40,60,80,100])
|
|
'20-clipped': (t) -> assert.equal t[0].clipped(), true
|
|
'40-not clipped': (t) -> assert.equal t[1].clipped(), false
|
|
'60-not clipped': (t) -> assert.equal t[2].clipped(), false
|
|
'80-clipped': (t) -> assert.equal t[3].clipped(), true
|
|
'100-clipped': (t) -> assert.equal t[4].clipped(), true
|
|
|
|
.export(module)
|