示例#1
0
文件: rgb-test.js 项目: 1y/d3
 "can derive a darker color": function(rgb) {
   assert.rgbEqual(rgb("coral").darker(), 178, 88, 56);
   assert.rgbEqual(rgb("coral").darker(.5), 213, 106, 66);
   assert.rgbEqual(rgb("coral").darker(1), 178, 88, 56);
   assert.rgbEqual(rgb("coral").darker(2), 124, 62, 39);
 },
示例#2
0
require("../env");var vows=require("vows"),assert=require("assert"),suite=vows.describe("d3.rgb");suite.addBatch({rgb:{topic:function(){return d3.rgb},"floors channel values":function(e){assert.rgbEqual(e(1.2,2.6,42.9),1,2,42)},"defaults to black for invalid inputs":function(e){assert.rgbEqual(e("invalid"),0,0,0),assert.rgbEqual(e("hasOwnProperty"),0,0,0),assert.rgbEqual(e("__proto__"),0,0,0)},"does not clamp channel values":function(e){assert.rgbEqual(e(-10,-20,-30),-10,-20,-30),assert.rgbEqual(e(300,400,500),300,400,500)},"converts string channel values to numbers":function(e){assert.rgbEqual(e("12","34","56"),12,34,56)},"converts null channel values to zero":function(e){assert.rgbEqual(e(null,null,null),0,0,0)},"exposes r, g and b properties":function(e){var t=e("#abc");assert.equal(t.r,170),assert.equal(t.g,187),assert.equal(t.b,204)},"changing r, g or b affects the string format":function(e){var t=e("#abc");t.r++,t.g++,t.b++,assert.equal(t+"","#abbccd")},'parses hexadecimal shorthand format (e.g., "#abc")':function(e){assert.rgbEqual(e("#abc"),170,187,204)},'parses hexadecimal format (e.g., "#abcdef")':function(e){assert.rgbEqual(e("#abcdef"),171,205,239)},'parses RGB format (e.g., "rgb(12, 34, 56)")':function(e){assert.rgbEqual(e("rgb(12, 34, 56)"),12,34,56)},'parses color names (e.g., "moccasin")':function(e){assert.rgbEqual(e("moccasin"),255,228,181),assert.rgbEqual(e("aliceblue"),240,248,255),assert.rgbEqual(e("yellow"),255,255,0)},'parses and converts HSL format (e.g., "hsl(60, 100%, 20%)")':function(e){assert.rgbEqual(e("hsl(60, 100%, 20%)"),102,102,0)},"can convert from RGB":function(e){assert.rgbEqual(e(d3.rgb(12,34,56)),12,34,56)},"can convert from HSL":function(e){assert.rgbEqual(e(d3.hsl(0,1,.5)),255,0,0)},"can convert to HSL":function(e){assert.hslEqual(e("red").hsl(),0,1,.5)},"can derive a brighter color":function(e){assert.rgbEqual(e("brown").brighter(),235,60,60),assert.rgbEqual(e("brown").brighter(.5),197,50,50),assert.rgbEqual(e("brown").brighter(1),235,60,60),assert.rgbEqual(e("brown").brighter(2),255,85,85)},"can derive a darker color":function(e){assert.rgbEqual(e("coral").darker(),178,88,56),assert.rgbEqual(e("coral").darker(.5),213,106,66),assert.rgbEqual(e("coral").darker(1),178,88,56),assert.rgbEqual(e("coral").darker(2),124,62,39)},"string coercion returns hexadecimal format":function(e){assert.strictEqual(e("#abcdef")+"","#abcdef"),assert.strictEqual(e("moccasin")+"","#ffe4b5"),assert.strictEqual(e("hsl(60, 100%, 20%)")+"","#666600"),assert.strictEqual(e("rgb(12, 34, 56)")+"","#0c2238"),assert.strictEqual(e(d3.rgb(12,34,56))+"","#0c2238"),assert.strictEqual(e(d3.hsl(60,1,.2))+"","#666600")}}}),suite.export(module)
示例#3
0
文件: rgb-test.js 项目: 1y/d3
 "can convert from HSL": function(rgb) {
   assert.rgbEqual(rgb(d3.hsl(0, 1, .5)), 255, 0, 0);
 },
示例#4
0
文件: rgb-test.js 项目: 1y/d3
 "can derive a brighter color": function(rgb) {
   assert.rgbEqual(rgb("brown").brighter(), 235, 60, 60);
   assert.rgbEqual(rgb("brown").brighter(.5), 197, 50, 50);
   assert.rgbEqual(rgb("brown").brighter(1), 235, 60, 60);
   assert.rgbEqual(rgb("brown").brighter(2), 255, 85, 85);
 },
示例#5
0
文件: rgb-test.js 项目: 1y/d3
 "parses and converts HSL format (e.g., \"hsl(60, 100%, 20%)\")": function(rgb) {
   assert.rgbEqual(rgb("hsl(60, 100%, 20%)"), 102, 102, 0);
 },
示例#6
0
文件: rgb-test.js 项目: 1y/d3
 "can convert from RGB": function(rgb) {
   assert.rgbEqual(rgb(d3.rgb(12, 34, 56)), 12, 34, 56);
 },
示例#7
0
文件: rgb-test.js 项目: 1y/d3
 "parses RGB format (e.g., \"rgb(12, 34, 56)\")": function(rgb) {
   assert.rgbEqual(rgb("rgb(12, 34, 56)"), 12, 34, 56);
 },
示例#8
0
文件: rgb-test.js 项目: 1y/d3
 "parses color names (e.g., \"moccasin\")": function(rgb) {
   assert.rgbEqual(rgb("moccasin"), 255, 228, 181);
   assert.rgbEqual(rgb("aliceblue"), 240, 248, 255);
   assert.rgbEqual(rgb("yellow"), 255, 255, 0);
 },
示例#9
0
文件: rgb-test.js 项目: 1y/d3
 "parses hexadecimal shorthand format (e.g., \"#abc\")": function(rgb) {
   assert.rgbEqual(rgb("#abc"), 170, 187, 204);
 },
示例#10
0
文件: rgb-test.js 项目: 1y/d3
 "parses hexadecimal format (e.g., \"#abcdef\")": function(rgb) {
   assert.rgbEqual(rgb("#abcdef"), 171, 205, 239);
 },
示例#11
0
文件: rgb-test.js 项目: 1y/d3
 "converts null channel values to zero": function(rgb) {
   assert.rgbEqual(rgb(null, null, null), 0, 0, 0);
 },
示例#12
0
文件: rgb-test.js 项目: 1y/d3
 "converts string channel values to numbers": function(rgb) {
   assert.rgbEqual(rgb("12", "34", "56"), 12, 34, 56);
 },
示例#13
0
文件: rgb-test.js 项目: 1y/d3
 "does not clamp channel values": function(rgb) {
   assert.rgbEqual(rgb(-10, -20, -30), -10, -20, -30);
   assert.rgbEqual(rgb(300, 400, 500), 300, 400, 500);
 },
示例#14
0
文件: rgb-test.js 项目: 1y/d3
 "defaults to black for invalid inputs": function(rgb) {
   assert.rgbEqual(rgb("invalid"), 0, 0, 0);
   assert.rgbEqual(rgb("hasOwnProperty"), 0, 0, 0);
   assert.rgbEqual(rgb("__proto__"), 0, 0, 0);
 },
示例#15
0
文件: rgb-test.js 项目: 1y/d3
 "floors channel values": function(rgb) {
   assert.rgbEqual(rgb(1.2, 2.6, 42.9), 1, 2, 42);
 },