1 if(!dojo._hasResource["dojox.color.tests._base"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
2 dojo._hasResource["dojox.color.tests._base"] = true;
3 dojo.provide("dojox.color.tests._base");
4 dojo.require("dojox.color");
6 /************************************************************
7 * Note that some color translations are not exact,
8 * due to the need to round calculations in translation.
10 * These tests work with grey, the primary colors and
11 * one secondary color to ensure that extreme calculation
13 ************************************************************/
15 tests.register("dojox.color.tests._base", [
16 function testStaticMethods(t){
18 t.assertEqual(dojox.color.fromCmy({ c:50, m:50, y:50}), new dojo.Color({ r:128, g:128, b:128 }));
19 t.assertEqual(dojox.color.fromCmy({ c:0, m:100, y:100}), new dojo.Color({ r:255, g:0, b:0 }));
20 t.assertEqual(dojox.color.fromCmy({ c:100, m:0, y:100}), new dojo.Color({ r:0, g:255, b:0 }));
21 t.assertEqual(dojox.color.fromCmy({ c:100, m:100, y:0}), new dojo.Color({ r:0, g:0, b:255 }));
22 t.assertEqual(dojox.color.fromCmy({ c:0, m:0, y:100}), new dojo.Color({ r:255, g:255, b:0 }));
25 t.assertEqual(dojox.color.fromCmyk({ c:0, m:0, y:0, b:50}), new dojo.Color({ r:128, g:128, b:128 }));
26 t.assertEqual(dojox.color.fromCmyk({ c:0, m:100, y:100, b:0}), new dojo.Color({ r:255, g:0, b:0 }));
27 t.assertEqual(dojox.color.fromCmyk({ c:100, m:0, y:100, b:0}), new dojo.Color({ r:0, g:255, b:0 }));
28 t.assertEqual(dojox.color.fromCmyk({ c:100, m:100, y:0, b:0}), new dojo.Color({ r:0, g:0, b:255 }));
29 t.assertEqual(dojox.color.fromCmyk({ c:0, m:0, y:100, b:0}), new dojo.Color({ r:255, g:255, b:0 }));
32 t.assertEqual(dojox.color.fromHsl({ h:0, s:0, l:50}), new dojo.Color({ r:128, g:128, b:128 }));
33 t.assertEqual(dojox.color.fromHsl({ h:0, s:100, l:50}), new dojo.Color({ r:255, g:0, b:0 }));
34 t.assertEqual(dojox.color.fromHsl({ h:120, s:100, l:50}), new dojo.Color({ r:0, g:255, b:0 }));
35 t.assertEqual(dojox.color.fromHsl({ h:240, s:100, l:50}), new dojo.Color({ r:0, g:0, b:255 }));
36 t.assertEqual(dojox.color.fromHsl({ h:60, s:100, l:50}), new dojo.Color({ r:255, g:255, b:0 }));
39 t.assertEqual(dojox.color.fromHsv({ h:0, s:0, v:50}), new dojo.Color({ r:128, g:128, b:128 }));
40 t.assertEqual(dojox.color.fromHsv({ h:0, s:100, v:100}), new dojo.Color({ r:255, g:0, b:0 }));
41 t.assertEqual(dojox.color.fromHsv({ h:120, s:100, v:100}), new dojo.Color({ r:0, g:255, b:0 }));
42 t.assertEqual(dojox.color.fromHsv({ h:240, s:100, v:100}), new dojo.Color({ r:0, g:0, b:255 }));
43 t.assertEqual(dojox.color.fromHsv({ h:60, s:100, v:100}), new dojo.Color({ r:255, g:255, b:0 }));
45 function testColorExtensions(t){
46 var grey=new dojox.color.Color({ r:128, g:128, b:128 });
47 var red=new dojox.color.Color({ r:255, g:0, b:0 });
48 var green=new dojox.color.Color({ r:0, g:255, b:0 });
49 var blue=new dojox.color.Color({ r:0, g:0, b:255 });
50 var yellow=new dojox.color.Color({ r:255, g:255, b:0 });
53 t.assertEqual(grey.toCmy(), { c:50, m:50, y:50 });
54 t.assertEqual(red.toCmy(), { c:0, m:100, y:100 });
55 t.assertEqual(green.toCmy(), { c:100, m:0, y:100 });
56 t.assertEqual(blue.toCmy(), { c:100, m:100, y:0 });
57 t.assertEqual(yellow.toCmy(), { c:0, m:0, y:100 });
60 t.assertEqual(grey.toCmyk(), { c:0, m:0, y:0, b:50 });
61 t.assertEqual(red.toCmyk(), { c:0, m:100, y:100, b:0 });
62 t.assertEqual(green.toCmyk(), { c:100, m:0, y:100, b:0 });
63 t.assertEqual(blue.toCmyk(), { c:100, m:100, y:0, b:0 });
64 t.assertEqual(yellow.toCmyk(), { c:0, m:0, y:100, b:0 });
67 t.assertEqual(grey.toHsl(), { h:0, s:0, l:50 });
68 t.assertEqual(red.toHsl(), { h:0, s:100, l:50 });
69 t.assertEqual(green.toHsl(), { h:120, s:100, l:50 });
70 t.assertEqual(blue.toHsl(), { h:240, s:100, l:50 });
71 t.assertEqual(yellow.toHsl(), { h:60, s:100, l:50 });
74 t.assertEqual(grey.toHsv(), { h:0, s:0, v:50 });
75 t.assertEqual(red.toHsv(), { h:0, s:100, v:100 });
76 t.assertEqual(green.toHsv(), { h:120, s:100, v:100 });
77 t.assertEqual(blue.toHsv(), { h:240, s:100, v:100 });
78 t.assertEqual(yellow.toHsv(), { h:60, s:100, v:100 });