You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

colorConvertNameToHex.phpt 4.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <?php
  2. require __DIR__ . '/bootstrap.php';
  3. use Mexitek\PHPColors\Color;
  4. use Tester\Assert;
  5. // Test cases.
  6. $colorsToConvert = array(
  7. 'aliceblue' => 'F0F8FF',
  8. 'antiquewhite' => 'FAEBD7',
  9. 'aqua' => '00FFFF',
  10. 'aquamarine' => '7FFFD4',
  11. 'azure' => 'F0FFFF',
  12. 'beige' => 'F5F5DC',
  13. 'bisque' => 'FFE4C4',
  14. 'black' => '000000',
  15. 'blanchedalmond' => 'FFEBCD',
  16. 'blue' => '0000FF',
  17. 'blueviolet' => '8A2BE2',
  18. 'brown' => 'A52A2A',
  19. 'burlywood' => 'DEB887',
  20. 'cadetblue' => '5F9EA0',
  21. 'chartreuse' => '7FFF00',
  22. 'chocolate' => 'D2691E',
  23. 'coral' => 'FF7F50',
  24. 'cornflowerblue' => '6495ED',
  25. 'cornsilk' => 'FFF8DC',
  26. 'crimson' => 'DC143C',
  27. 'cyan' => '00FFFF',
  28. 'darkblue' => '00008B',
  29. 'darkcyan' => '008B8B',
  30. 'darkgoldenrod' => 'B8860B',
  31. 'darkgray' => 'A9A9A9',
  32. 'darkgreen' => '006400',
  33. 'darkgrey' => 'A9A9A9',
  34. 'darkkhaki' => 'BDB76B',
  35. 'darkmagenta' => '8B008B',
  36. 'darkolivegreen' => '556B2F',
  37. 'darkorange' => 'FF8C00',
  38. 'darkorchid' => '9932CC',
  39. 'darkred' => '8B0000',
  40. 'darksalmon' => 'E9967A',
  41. 'darkseagreen' => '8FBC8F',
  42. 'darkslateblue' => '483D8B',
  43. 'darkslategray' => '2F4F4F',
  44. 'darkslategrey' => '2F4F4F',
  45. 'darkturquoise' => '00CED1',
  46. 'darkviolet' => '9400D3',
  47. 'deeppink' => 'FF1493',
  48. 'deepskyblue' => '00BFFF',
  49. 'dimgray' => '696969',
  50. 'dimgrey' => '696969',
  51. 'dodgerblue' => '1E90FF',
  52. 'firebrick' => 'B22222',
  53. 'floralwhite' => 'FFFAF0',
  54. 'forestgreen' => '228B22',
  55. 'fuchsia' => 'FF00FF',
  56. 'gainsboro' => 'DCDCDC',
  57. 'ghostwhite' => 'F8F8FF',
  58. 'gold' => 'FFD700',
  59. 'goldenrod' => 'DAA520',
  60. 'gray' => '808080',
  61. 'green' => '008000',
  62. 'greenyellow' => 'ADFF2F',
  63. 'grey' => '808080',
  64. 'honeydew' => 'F0FFF0',
  65. 'hotpink' => 'FF69B4',
  66. 'indianred' => 'CD5C5C',
  67. 'indigo' => '4B0082',
  68. 'ivory' => 'FFFFF0',
  69. 'khaki' => 'F0E68C',
  70. 'lavender' => 'E6E6FA',
  71. 'lavenderblush' => 'FFF0F5',
  72. 'lawngreen' => '7CFC00',
  73. 'lemonchiffon' => 'FFFACD',
  74. 'lightblue' => 'ADD8E6',
  75. 'lightcoral' => 'F08080',
  76. 'lightcyan' => 'E0FFFF',
  77. 'lightgoldenrodyellow' => 'FAFAD2',
  78. 'lightgray' => 'D3D3D3',
  79. 'lightgreen' => '90EE90',
  80. 'lightgrey' => 'D3D3D3',
  81. 'lightpink' => 'FFB6C1',
  82. 'lightsalmon' => 'FFA07A',
  83. 'lightseagreen' => '20B2AA',
  84. 'lightskyblue' => '87CEFA',
  85. 'lightslategray' => '778899',
  86. 'lightslategrey' => '778899',
  87. 'lightsteelblue' => 'B0C4DE',
  88. 'lightyellow' => 'FFFFE0',
  89. 'lime' => '00FF00',
  90. 'limegreen' => '32CD32',
  91. 'linen' => 'FAF0E6',
  92. 'magenta' => 'FF00FF',
  93. 'maroon' => '800000',
  94. 'mediumaquamarine' => '66CDAA',
  95. 'mediumblue' => '0000CD',
  96. 'mediumorchid' => 'BA55D3',
  97. 'mediumpurple' => '9370D0',
  98. 'mediumseagreen' => '3CB371',
  99. 'mediumslateblue' => '7B68EE',
  100. 'mediumspringgreen' => '00FA9A',
  101. 'mediumturquoise' => '48D1CC',
  102. 'mediumvioletred' => 'C71585',
  103. 'midnightblue' => '191970',
  104. 'mintcream' => 'F5FFFA',
  105. 'mistyrose' => 'FFE4E1',
  106. 'moccasin' => 'FFE4B5',
  107. 'navajowhite' => 'FFDEAD',
  108. 'navy' => '000080',
  109. 'oldlace' => 'FDF5E6',
  110. 'olive' => '808000',
  111. 'olivedrab' => '6B8E23',
  112. 'orange' => 'FFA500',
  113. 'orangered' => 'FF4500',
  114. 'orchid' => 'DA70D6',
  115. 'palegoldenrod' => 'EEE8AA',
  116. 'palegreen' => '98FB98',
  117. 'paleturquoise' => 'AFEEEE',
  118. 'palevioletred' => 'DB7093',
  119. 'papayawhip' => 'FFEFD5',
  120. 'peachpuff' => 'FFDAB9',
  121. 'peru' => 'CD853F',
  122. 'pink' => 'FFC0CB',
  123. 'plum' => 'DDA0DD',
  124. 'powderblue' => 'B0E0E6',
  125. 'purple' => '800080',
  126. 'red' => 'FF0000',
  127. 'rosybrown' => 'BC8F8F',
  128. 'royalblue' => '4169E1',
  129. 'saddlebrown' => '8B4513',
  130. 'salmon' => 'FA8072',
  131. 'sandybrown' => 'F4A460',
  132. 'seagreen' => '2E8B57',
  133. 'seashell' => 'FFF5EE',
  134. 'sienna' => 'A0522D',
  135. 'silver' => 'C0C0C0',
  136. 'skyblue' => '87CEEB',
  137. 'slateblue' => '6A5ACD',
  138. 'slategray' => '708090',
  139. 'slategrey' => '708090',
  140. 'snow' => 'FFFAFA',
  141. 'springgreen' => '00FF7F',
  142. 'steelblue' => '4682B4',
  143. 'tan' => 'D2B48C',
  144. 'teal' => '008080',
  145. 'thistle' => 'D8BFD8',
  146. 'tomato' => 'FF6347',
  147. 'turquoise' => '40E0D0',
  148. 'violet' => 'EE82EE',
  149. 'wheat' => 'F5DEB3',
  150. 'white' => 'FFFFFF',
  151. 'whitesmoke' => 'F5F5F5',
  152. 'yellow' => 'FFFF00',
  153. 'yellowgreen' => '9ACD32'
  154. );
  155. foreach ($colorsToConvert as $name => $hex) {
  156. $hex = '#' . $hex;
  157. $answer = Color::nameToHex($name);
  158. Assert::same(
  159. $hex,
  160. $answer,
  161. 'Incorrect hex result: "' . Color::nameToHex($name) .
  162. '" should convert to "' . $hex .
  163. '", but output was: "' . $answer . '".'
  164. );
  165. }