Index: third_party/WebKit/LayoutTests/fast/canvas/rgba-parsing.html |
diff --git a/third_party/WebKit/LayoutTests/fast/canvas/rgba-parsing.html b/third_party/WebKit/LayoutTests/fast/canvas/rgba-parsing.html |
index 600cd4ba8cc7cbbbbfe768eae5235e91dc41affb..353d117e327dad8d070ff18ee057bd7ee56a1aee 100644 |
--- a/third_party/WebKit/LayoutTests/fast/canvas/rgba-parsing.html |
+++ b/third_party/WebKit/LayoutTests/fast/canvas/rgba-parsing.html |
@@ -1,9 +1,110 @@ |
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
-<html> |
-<head> |
-<script src="../../resources/js-test.js"></script> |
-</head> |
-<body> |
-<script src="script-tests/rgba-parsing.js"></script> |
+<script src="../../resources/testharness.js"></script> |
+<script src="../../resources/testharnessreport.js"></script> |
+ |
+<script> |
+// Test rgba() color parsing results. |
+ |
+var ctx = document.createElement('canvas').getContext('2d'); |
+ |
+function parseRGBAString(rgbaString, expectedColor) { |
+ ctx.globalCompositeOperation = 'copy'; |
+ ctx.fillStyle = '#666'; |
+ ctx.fillStyle = rgbaString; |
+ ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height); |
+ var data = ctx.getImageData(0, 0, 1, 1).data; |
+ assert_array_equals(expectedColor, data); |
+} |
+ |
+var testScenarios = [ |
+ ['Test Case 1', 'rgba(0.9.9%, 0%, 0%, 1)', [102, 102, 102, 255]], |
+ ['Test Case 2', 'rgba(0, 0.., 0, 1)', [102, 102, 102, 255]], |
+ ['Test Case 3', 'rgba(10%, .%, 0%, 1)', [102, 102, 102, 255]], |
+ ['Test Case 4', 'rgba(13.37%1337%, 5%, 50.0%, 1)', [102, 102, 102, 255]], |
+ ['Test Case 5', 'rgba(%, 50%, 50.0%, 1)', [102, 102, 102, 255]], |
+ ['Test Case 6', 'rgba(50.0%, 50%, a%, 1)', [102, 102, 102, 255]], |
+ ['Test Case 7', 'rgba(500%, 0%, 0%, 1)', [255, 0, 0, 255]], |
+ ['Test Case 8', 'rgba(100%, 100%, 100%, 1)', [255, 255, 255, 255]], |
+ ['Test Case 9', 'rgba(10.5%, 80%, 70%, 1)', [26, 204, 179, 255]], |
+ ['Test Case 10', 'rgba(0%, 0%, 0%, 1)', [0, 0, 0, 255]], |
+ ['Test Case 11', 'rgba(50.0%, 50.0%, 50.0%, 1)', [128, 128, 128, 255]], |
+ ['Test Case 12', 'rgba(100%, 100%, 100%, 1)', [255, 255, 255, 255]], |
+ ['Test Case 13', 'rgba(10.5%, 80%, 70%, 1)', [26, 204, 179, 255]], |
+ ['Test Case 14', 'rgba(55.5%, 0.5%, 110%, 1)', [142, 1, 255, 255]], |
+ ['Test Case 15', 'rgba(60.59998%, 0.59999%, 110.12345%, 1)', [155, 1, 255, 255]], |
+ ['Test Case 16', 'rgba(10.999%, 0.999%, 0.000009%, 1)', [28, 2, 0, 255]], |
+ ['Test Case 17', 'rgba(79.99999%, 99.99999%, 500%, 1)', [204, 255, 255, 255]], |
+ ['Test Case 18', 'rgba(0, 0, 0, -0.10)', [0, 0, 0, 0]], |
+ ['Test Case 19', 'rgba(0, 0, 0, -5.0)', [0, 0, 0, 0]], |
+ ['Test Case 20', 'rgba(0, 0, 0, 5.0)', [0, 0, 0, 255]], |
+ ['Test Case 21', 'rgba(0, 0, 0, -1)', [0, 0, 0, 0]], |
+ ['Test Case 22', 'rgba(0, 0, 0, 0)', [0, 0, 0, 0]], |
+ ['Test Case 23', 'rgba(0, 0, 0, 2)', [0, 0, 0, 255]], |
+ ['Test Case 24', 'rgba(0, 0, 0, 2.0)', [0, 0, 0, 255]], |
+ ['Test Case 25', 'rgba(0, 0, 0, 0.0)', [0, 0, 0, 0]], |
+ ['Test Case 26', 'rgba(0, 0, 0, 00.0)', [0, 0, 0, 0]], |
+ ['Test Case 27', 'rgba(0, 0, 0, 0.00)', [0, 0, 0, 0]], |
+ ['Test Case 28', 'rgba(0, 0, 0, .1)', [0, 0, 0, 26]], |
+ ['Test Case 29', 'rgba(0, 0, 0, .2)', [0, 0, 0, 51]], |
+ ['Test Case 30', 'rgba(0, 0, 0, .3)', [0, 0, 0, 77]], |
+ ['Test Case 31', 'rgba(0, 0, 0, .4)', [0, 0, 0, 102]], |
+ ['Test Case 32', 'rgba(0, 0, 0, .5)', [0, 0, 0, 128]], |
+ ['Test Case 33', 'rgba(0, 0, 0, .6)', [0, 0, 0, 153]], |
+ ['Test Case 34', 'rgba(0, 0, 0, .7)', [0, 0, 0, 179]], |
+ ['Test Case 35', 'rgba(0, 0, 0, .8)', [0, 0, 0, 204]], |
+ ['Test Case 36', 'rgba(0, 0, 0, .9)', [0, 0, 0, 230]], |
+ ['Test Case 37', 'rgba(0, 0, 0, 0.1)', [0, 0, 0, 26]], |
+ ['Test Case 38', 'rgba(0, 0, 0, 0.2)', [0, 0, 0, 51]], |
+ ['Test Case 39', 'rgba(0, 0, 0, 0.3)', [0, 0, 0, 77]], |
+ ['Test Case 40', 'rgba(0, 0, 0, 0.4)', [0, 0, 0, 102]], |
+ ['Test Case 41', 'rgba(0, 0, 0, 0.5)', [0, 0, 0, 128]], |
+ ['Test Case 42', 'rgba(0, 0, 0, 0.6)', [0, 0, 0, 153]], |
+ ['Test Case 43', 'rgba(0, 0, 0, 0.7)', [0, 0, 0, 179]], |
+ ['Test Case 44', 'rgba(0, 0, 0, 0.8)', [0, 0, 0, 204]], |
+ ['Test Case 45', 'rgba(0, 0, 0, 0.9)', [0, 0, 0, 230]], |
+ ['Test Case 46', 'rgba(0, 0, 0, 1.0)', [0, 0, 0, 255]], |
+ ['Test Case 47', 'rgba(0, 0, 0, 0.10)', [0, 0, 0, 26]], |
+ ['Test Case 48', 'rgba(0, 0, 0, 0.20)', [0, 0, 0, 51]], |
+ ['Test Case 49', 'rgba(0, 0, 0, 0.30)', [0, 0, 0, 77]], |
+ ['Test Case 50', 'rgba(0, 0, 0, 0.40)', [0, 0, 0, 102]], |
+ ['Test Case 51', 'rgba(0, 0, 0, 0.50)', [0, 0, 0, 128]], |
+ ['Test Case 52', 'rgba(0, 0, 0, 0.60)', [0, 0, 0, 153]], |
+ ['Test Case 53', 'rgba(0, 0, 0, 0.70)', [0, 0, 0, 179]], |
+ ['Test Case 54', 'rgba(0, 0, 0, 0.80)', [0, 0, 0, 204]], |
+ ['Test Case 55', 'rgba(0, 0, 0, 0.90)', [0, 0, 0, 230]], |
+ ['Test Case 56', 'rgba(0, 0, 0, 1.00)', [0, 0, 0, 255]], |
+ ['Test Case 57', 'rgba(0, 0, 0, .10)', [0, 0, 0, 26]], |
+ ['Test Case 58', 'rgba(0, 0, 0, .20)', [0, 0, 0, 51]], |
+ ['Test Case 59', 'rgba(0, 0, 0, .30)', [0, 0, 0, 77]], |
+ ['Test Case 60', 'rgba(0, 0, 0, .40)', [0, 0, 0, 102]], |
+ ['Test Case 61', 'rgba(0, 0, 0, .50)', [0, 0, 0, 128]], |
+ ['Test Case 62', 'rgba(0, 0, 0, .60)', [0, 0, 0, 153]], |
+ ['Test Case 63', 'rgba(0, 0, 0, .70)', [0, 0, 0, 179]], |
+ ['Test Case 64', 'rgba(0, 0, 0, .80)', [0, 0, 0, 204]], |
+ ['Test Case 65', 'rgba(0, 0, 0, .90)', [0, 0, 0, 230]], |
+ ['Test Case 66', 'rgba(0, 0, 0, 0.10000000000000000000000)', [0, 0, 0, 26]], |
+ ['Test Case 67', 'rgba(0, 0, 0, 0.20000000000000000000000)', [0, 0, 0, 51]], |
+ ['Test Case 68', 'rgba(0, 0, 0, 0.30000000000000000000000)', [0, 0, 0, 77]], |
+ ['Test Case 69', 'rgba(0, 0, 0, 0.40000000000000000000000)', [0, 0, 0, 102]], |
+ ['Test Case 70', 'rgba(0, 0, 0, 0.50000000000000000000000)', [0, 0, 0, 128]], |
+ ['Test Case 71', 'rgba(0, 0, 0, 0.60000000000000000000000)', [0, 0, 0, 153]], |
+ ['Test Case 72', 'rgba(0, 0, 0, 0.70000000000000000000000)', [0, 0, 0, 179]], |
+ ['Test Case 73', 'rgba(0, 0, 0, 0.80000000000000000000000)', [0, 0, 0, 204]], |
+ ['Test Case 74', 'rgba(0, 0, 0, 0.90000000000000000000000)', [0, 0, 0, 230]], |
+ ['Test Case 75', 'rgba(0, 0, 0, 1.00000000000000000000000)', [0, 0, 0, 255]], |
+ ['Test Case 76', 'rgba(0, 0, 0, 0.990)', [0, 0, 0, 252]], |
+ ['Test Case 77', 'rgba(0, 0, 0, 0.991)', [0, 0, 0, 253]], |
+ ['Test Case 78', 'rgba(0, 0, 0, 0.992)', [0, 0, 0, 253]], |
+ ['Test Case 79', 'rgba(0, 0, 0, 0.993)', [0, 0, 0, 253]], |
+ ['Test Case 80', 'rgba(0, 0, 0, 0.994)', [0, 0, 0, 253]], |
+ ['Test Case 81', 'rgba(0, 0, 0, 0.995)', [0, 0, 0, 254]], |
+ ['Test Case 82', 'rgba(0, 0, 0, 0.996)', [0, 0, 0, 254]], |
+ ['Test Case 83', 'rgba(0, 0, 0, 0.997)', [0, 0, 0, 254]], |
+ ['Test Case 84', 'rgba(0, 0, 0, 0.998)', [0, 0, 0, 254]], |
+ ['Test Case 85', 'rgba(0, 0, 0, 0.999)', [0, 0, 0, 255]], |
+]; |
+ |
+generate_tests(parseRGBAString, testScenarios); |
+ |
+</script> |
</body> |
</html> |