6e13e3f969a8f437b5dfbe2faf3ae7c190f01eda.svn-base 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. if (!dojo._hasResource["dojox.color.tests._base"]) { // _hasResource checks
  2. // added by build. Do
  3. // not use _hasResource
  4. // directly in your
  5. // code.
  6. dojo._hasResource["dojox.color.tests._base"] = true;
  7. dojo.provide("dojox.color.tests._base");
  8. dojo.require("dojox.color");
  9. /***************************************************************************
  10. * Note that some color translations are not exact, due to the need to round
  11. * calculations in translation.
  12. *
  13. * These tests work with grey, the primary colors and one secondary color to
  14. * ensure that extreme calculation is correct.
  15. **************************************************************************/
  16. tests.register("dojox.color.tests._base", [function testStaticMethods(t) {
  17. // fromCmy
  18. t.assertEqual(dojox.color.fromCmy({
  19. c : 50,
  20. m : 50,
  21. y : 50
  22. }), new dojo.Color({
  23. r : 128,
  24. g : 128,
  25. b : 128
  26. }));
  27. t.assertEqual(dojox.color.fromCmy({
  28. c : 0,
  29. m : 100,
  30. y : 100
  31. }), new dojo.Color({
  32. r : 255,
  33. g : 0,
  34. b : 0
  35. }));
  36. t.assertEqual(dojox.color.fromCmy({
  37. c : 100,
  38. m : 0,
  39. y : 100
  40. }), new dojo.Color({
  41. r : 0,
  42. g : 255,
  43. b : 0
  44. }));
  45. t.assertEqual(dojox.color.fromCmy({
  46. c : 100,
  47. m : 100,
  48. y : 0
  49. }), new dojo.Color({
  50. r : 0,
  51. g : 0,
  52. b : 255
  53. }));
  54. t.assertEqual(dojox.color.fromCmy({
  55. c : 0,
  56. m : 0,
  57. y : 100
  58. }), new dojo.Color({
  59. r : 255,
  60. g : 255,
  61. b : 0
  62. }));
  63. // fromCmyk
  64. t.assertEqual(dojox.color.fromCmyk({
  65. c : 0,
  66. m : 0,
  67. y : 0,
  68. b : 50
  69. }), new dojo.Color({
  70. r : 128,
  71. g : 128,
  72. b : 128
  73. }));
  74. t.assertEqual(dojox.color.fromCmyk({
  75. c : 0,
  76. m : 100,
  77. y : 100,
  78. b : 0
  79. }), new dojo.Color({
  80. r : 255,
  81. g : 0,
  82. b : 0
  83. }));
  84. t.assertEqual(dojox.color.fromCmyk({
  85. c : 100,
  86. m : 0,
  87. y : 100,
  88. b : 0
  89. }), new dojo.Color({
  90. r : 0,
  91. g : 255,
  92. b : 0
  93. }));
  94. t.assertEqual(dojox.color.fromCmyk({
  95. c : 100,
  96. m : 100,
  97. y : 0,
  98. b : 0
  99. }), new dojo.Color({
  100. r : 0,
  101. g : 0,
  102. b : 255
  103. }));
  104. t.assertEqual(dojox.color.fromCmyk({
  105. c : 0,
  106. m : 0,
  107. y : 100,
  108. b : 0
  109. }), new dojo.Color({
  110. r : 255,
  111. g : 255,
  112. b : 0
  113. }));
  114. // fromHsl
  115. t.assertEqual(dojox.color.fromHsl({
  116. h : 0,
  117. s : 0,
  118. l : 50
  119. }), new dojo.Color({
  120. r : 128,
  121. g : 128,
  122. b : 128
  123. }));
  124. t.assertEqual(dojox.color.fromHsl({
  125. h : 0,
  126. s : 100,
  127. l : 50
  128. }), new dojo.Color({
  129. r : 255,
  130. g : 0,
  131. b : 0
  132. }));
  133. t.assertEqual(dojox.color.fromHsl({
  134. h : 120,
  135. s : 100,
  136. l : 50
  137. }), new dojo.Color({
  138. r : 0,
  139. g : 255,
  140. b : 0
  141. }));
  142. t.assertEqual(dojox.color.fromHsl({
  143. h : 240,
  144. s : 100,
  145. l : 50
  146. }), new dojo.Color({
  147. r : 0,
  148. g : 0,
  149. b : 255
  150. }));
  151. t.assertEqual(dojox.color.fromHsl({
  152. h : 60,
  153. s : 100,
  154. l : 50
  155. }), new dojo.Color({
  156. r : 255,
  157. g : 255,
  158. b : 0
  159. }));
  160. // fromHsv
  161. t.assertEqual(dojox.color.fromHsv({
  162. h : 0,
  163. s : 0,
  164. v : 50
  165. }), new dojo.Color({
  166. r : 128,
  167. g : 128,
  168. b : 128
  169. }));
  170. t.assertEqual(dojox.color.fromHsv({
  171. h : 0,
  172. s : 100,
  173. v : 100
  174. }), new dojo.Color({
  175. r : 255,
  176. g : 0,
  177. b : 0
  178. }));
  179. t.assertEqual(dojox.color.fromHsv({
  180. h : 120,
  181. s : 100,
  182. v : 100
  183. }), new dojo.Color({
  184. r : 0,
  185. g : 255,
  186. b : 0
  187. }));
  188. t.assertEqual(dojox.color.fromHsv({
  189. h : 240,
  190. s : 100,
  191. v : 100
  192. }), new dojo.Color({
  193. r : 0,
  194. g : 0,
  195. b : 255
  196. }));
  197. t.assertEqual(dojox.color.fromHsv({
  198. h : 60,
  199. s : 100,
  200. v : 100
  201. }), new dojo.Color({
  202. r : 255,
  203. g : 255,
  204. b : 0
  205. }));
  206. }, function testColorExtensions(t) {
  207. var grey = new dojox.color.Color({
  208. r : 128,
  209. g : 128,
  210. b : 128
  211. });
  212. var red = new dojox.color.Color({
  213. r : 255,
  214. g : 0,
  215. b : 0
  216. });
  217. var green = new dojox.color.Color({
  218. r : 0,
  219. g : 255,
  220. b : 0
  221. });
  222. var blue = new dojox.color.Color({
  223. r : 0,
  224. g : 0,
  225. b : 255
  226. });
  227. var yellow = new dojox.color.Color({
  228. r : 255,
  229. g : 255,
  230. b : 0
  231. });
  232. // toCmy
  233. t.assertEqual(grey.toCmy(), {
  234. c : 50,
  235. m : 50,
  236. y : 50
  237. });
  238. t.assertEqual(red.toCmy(), {
  239. c : 0,
  240. m : 100,
  241. y : 100
  242. });
  243. t.assertEqual(green.toCmy(), {
  244. c : 100,
  245. m : 0,
  246. y : 100
  247. });
  248. t.assertEqual(blue.toCmy(), {
  249. c : 100,
  250. m : 100,
  251. y : 0
  252. });
  253. t.assertEqual(yellow.toCmy(), {
  254. c : 0,
  255. m : 0,
  256. y : 100
  257. });
  258. // toCmyk
  259. t.assertEqual(grey.toCmyk(), {
  260. c : 0,
  261. m : 0,
  262. y : 0,
  263. b : 50
  264. });
  265. t.assertEqual(red.toCmyk(), {
  266. c : 0,
  267. m : 100,
  268. y : 100,
  269. b : 0
  270. });
  271. t.assertEqual(green.toCmyk(), {
  272. c : 100,
  273. m : 0,
  274. y : 100,
  275. b : 0
  276. });
  277. t.assertEqual(blue.toCmyk(), {
  278. c : 100,
  279. m : 100,
  280. y : 0,
  281. b : 0
  282. });
  283. t.assertEqual(yellow.toCmyk(), {
  284. c : 0,
  285. m : 0,
  286. y : 100,
  287. b : 0
  288. });
  289. // toHsl
  290. t.assertEqual(grey.toHsl(), {
  291. h : 0,
  292. s : 0,
  293. l : 50
  294. });
  295. t.assertEqual(red.toHsl(), {
  296. h : 0,
  297. s : 100,
  298. l : 50
  299. });
  300. t.assertEqual(green.toHsl(), {
  301. h : 120,
  302. s : 100,
  303. l : 50
  304. });
  305. t.assertEqual(blue.toHsl(), {
  306. h : 240,
  307. s : 100,
  308. l : 50
  309. });
  310. t.assertEqual(yellow.toHsl(), {
  311. h : 60,
  312. s : 100,
  313. l : 50
  314. });
  315. // toHsv
  316. t.assertEqual(grey.toHsv(), {
  317. h : 0,
  318. s : 0,
  319. v : 50
  320. });
  321. t.assertEqual(red.toHsv(), {
  322. h : 0,
  323. s : 100,
  324. v : 100
  325. });
  326. t.assertEqual(green.toHsv(), {
  327. h : 120,
  328. s : 100,
  329. v : 100
  330. });
  331. t.assertEqual(blue.toHsv(), {
  332. h : 240,
  333. s : 100,
  334. v : 100
  335. });
  336. t.assertEqual(yellow.toHsv(), {
  337. h : 60,
  338. s : 100,
  339. v : 100
  340. });
  341. }]);
  342. }