|
1 | 1 | var vows = require("vows"), |
| 2 | + d3 = require("../../"), |
2 | 3 | load = require("../load"), |
3 | 4 | assert = require("../env-assert"); |
4 | 5 |
|
5 | 6 | var suite = vows.describe("d3.hsl"); |
6 | 7 |
|
7 | 8 | suite.addBatch({ |
8 | 9 | "hsl": { |
9 | | - topic: load("color/hsl"), |
10 | | - "does not clamp channel values": function(d3) { |
11 | | - assert.hslEqual(d3.hsl(-100, -1, -2), -100, -1, -2); |
12 | | - assert.hslEqual(d3.hsl(400, 2, 3), 400, 2, 3); |
| 10 | + topic: load("color/hsl").expression("d3.hsl"), |
| 11 | + "does not clamp channel values": function(hsl) { |
| 12 | + assert.hslEqual(hsl(-100, -1, -2), -100, -1, -2); |
| 13 | + assert.hslEqual(hsl(400, 2, 3), 400, 2, 3); |
13 | 14 | }, |
14 | | - "converts string channel values to numbers": function(d3) { |
15 | | - assert.hslEqual(d3.hsl("180", ".5", ".6"), 180, .5, .6); |
| 15 | + "converts string channel values to numbers": function(hsl) { |
| 16 | + assert.hslEqual(hsl("180", ".5", ".6"), 180, .5, .6); |
16 | 17 | }, |
17 | | - "converts null channel values to zero": function(d3) { |
18 | | - assert.hslEqual(d3.hsl(null, null, null), 0, 0, 0); |
| 18 | + "converts null channel values to zero": function(hsl) { |
| 19 | + assert.hslEqual(hsl(null, null, null), 0, 0, 0); |
19 | 20 | }, |
20 | | - "exposes h, s and l properties": function(d3) { |
21 | | - var color = d3.hsl("hsl(180, 50%, 60%)"); |
| 21 | + "exposes h, s and l properties": function(hsl) { |
| 22 | + var color = hsl("hsl(180, 50%, 60%)"); |
22 | 23 | assert.equal(color.h, 180); |
23 | 24 | assert.equal(color.s, .5); |
24 | 25 | assert.equal(color.l, .6); |
25 | 26 | }, |
26 | | - "changing h, s or l affects the string format": function(d3) { |
27 | | - var color = d3.hsl("hsl(180, 50%, 60%)"); |
| 27 | + "changing h, s or l affects the string format": function(hsl) { |
| 28 | + var color = hsl("hsl(180, 50%, 60%)"); |
28 | 29 | color.h++; |
29 | 30 | color.s += .1; |
30 | 31 | color.l += .1; |
31 | 32 | assert.equal(color + "", "#85dfe0"); |
32 | 33 | }, |
33 | | - "parses hexadecimal shorthand format (e.g., \"#abc\")": function(d3) { |
34 | | - assert.hslEqual(d3.hsl("#abc"), 210, .25, .733333); |
| 34 | + "parses hexadecimal shorthand format (e.g., \"#abc\")": function(hsl) { |
| 35 | + assert.hslEqual(hsl("#abc"), 210, .25, .733333); |
35 | 36 | }, |
36 | | - "parses hexadecimal format (e.g., \"#abcdef\")": function(d3) { |
37 | | - assert.hslEqual(d3.hsl("#abcdef"), 210, .68, .803922); |
| 37 | + "parses hexadecimal format (e.g., \"#abcdef\")": function(hsl) { |
| 38 | + assert.hslEqual(hsl("#abcdef"), 210, .68, .803922); |
38 | 39 | }, |
39 | | - "parses HSL format (e.g., \"hsl(210, 64%, 13%)\")": function(d3) { |
40 | | - assert.hslEqual(d3.hsl("hsl(210, 64.7058%, 13.33333%)"), 210, .647058, .133333); |
| 40 | + "parses HSL format (e.g., \"hsl(210, 64%, 13%)\")": function(hsl) { |
| 41 | + assert.hslEqual(hsl("hsl(210, 64.7058%, 13.33333%)"), 210, .647058, .133333); |
41 | 42 | }, |
42 | | - "parses color names (e.g., \"moccasin\")": function(d3) { |
43 | | - assert.hslEqual(d3.hsl("moccasin"), 38.108108, 1, .854902); |
44 | | - assert.hslEqual(d3.hsl("aliceblue"), 208, 1, .970588); |
45 | | - assert.hslEqual(d3.hsl("yellow"), 60, 1, .5); |
| 43 | + "parses color names (e.g., \"moccasin\")": function(hsl) { |
| 44 | + assert.hslEqual(hsl("moccasin"), 38.108108, 1, .854902); |
| 45 | + assert.hslEqual(hsl("aliceblue"), 208, 1, .970588); |
| 46 | + assert.hslEqual(hsl("yellow"), 60, 1, .5); |
46 | 47 | }, |
47 | | - "parses and converts RGB format (e.g., \"rgb(102, 102, 0)\")": function(d3) { |
48 | | - assert.hslEqual(d3.hsl("rgb(102, 102, 0)"), 60, 1, .2); |
| 48 | + "parses and converts RGB format (e.g., \"rgb(102, 102, 0)\")": function(hsl) { |
| 49 | + assert.hslEqual(hsl("rgb(102, 102, 0)"), 60, 1, .2); |
49 | 50 | }, |
50 | | - "can convert from RGB": function(d3) { |
51 | | - assert.hslEqual(d3.hsl(d3.rgb(12, 34, 56)), 210, .647058, .133333); |
| 51 | + "can convert from RGB": function(hsl) { |
| 52 | + assert.hslEqual(hsl(d3.rgb(12, 34, 56)), 210, .647058, .133333); |
52 | 53 | }, |
53 | | - "can convert from HSL": function(d3) { |
54 | | - assert.hslEqual(d3.hsl(d3.hsl(20, .8, .3)), 20, .8, .3); |
| 54 | + "can convert from HSL": function(hsl) { |
| 55 | + assert.hslEqual(hsl(hsl(20, .8, .3)), 20, .8, .3); |
55 | 56 | }, |
56 | | - "can convert to RGB": function(d3) { |
57 | | - assert.rgbEqual(d3.hsl("steelblue").rgb(), 70, 130, 180); |
| 57 | + "can convert to RGB": function(hsl) { |
| 58 | + assert.rgbEqual(hsl("steelblue").rgb(), 70, 130, 180); |
58 | 59 | }, |
59 | | - "can derive a brighter color": function(d3) { |
60 | | - assert.hslEqual(d3.hsl("steelblue").brighter(), 207.272727, .44, .7002801); |
61 | | - assert.hslEqual(d3.hsl("steelblue").brighter(.5), 207.272727, .44, .5858964); |
62 | | - assert.hslEqual(d3.hsl("steelblue").brighter(1), 207.272727, .44, .7002801); |
63 | | - assert.hslEqual(d3.hsl("steelblue").brighter(2), 207.272727, .44, 1.0004002); |
| 60 | + "can derive a brighter color": function(hsl) { |
| 61 | + assert.hslEqual(hsl("steelblue").brighter(), 207.272727, .44, .7002801); |
| 62 | + assert.hslEqual(hsl("steelblue").brighter(.5), 207.272727, .44, .5858964); |
| 63 | + assert.hslEqual(hsl("steelblue").brighter(1), 207.272727, .44, .7002801); |
| 64 | + assert.hslEqual(hsl("steelblue").brighter(2), 207.272727, .44, 1.0004002); |
64 | 65 | }, |
65 | | - "can derive a darker color": function(d3) { |
66 | | - assert.hslEqual(d3.hsl("lightsteelblue").darker(), 213.913043, .4107143, .5462745); |
67 | | - assert.hslEqual(d3.hsl("lightsteelblue").darker(.5), 213.913043, .4107143, .6529229); |
68 | | - assert.hslEqual(d3.hsl("lightsteelblue").darker(1), 213.913043, .4107143, .5462745); |
69 | | - assert.hslEqual(d3.hsl("lightsteelblue").darker(2), 213.913043, .4107143, .38239216); |
| 66 | + "can derive a darker color": function(hsl) { |
| 67 | + assert.hslEqual(hsl("lightsteelblue").darker(), 213.913043, .4107143, .5462745); |
| 68 | + assert.hslEqual(hsl("lightsteelblue").darker(.5), 213.913043, .4107143, .6529229); |
| 69 | + assert.hslEqual(hsl("lightsteelblue").darker(1), 213.913043, .4107143, .5462745); |
| 70 | + assert.hslEqual(hsl("lightsteelblue").darker(2), 213.913043, .4107143, .38239216); |
70 | 71 | }, |
71 | | - "string coercion returns RGB format": function(d3) { |
72 | | - assert.strictEqual(d3.hsl("hsl(60, 100%, 20%)") + "", "#666600"); |
73 | | - assert.strictEqual(d3.hsl(d3.hsl(60, 1, .2)) + "", "#666600"); |
| 72 | + "string coercion returns RGB format": function(hsl) { |
| 73 | + assert.strictEqual(hsl("hsl(60, 100%, 20%)") + "", "#666600"); |
| 74 | + assert.strictEqual(hsl(hsl(60, 1, .2)) + "", "#666600"); |
74 | 75 | } |
75 | 76 | } |
76 | 77 | }); |
|
0 commit comments