summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js')
-rw-r--r--third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js63
1 files changed, 27 insertions, 36 deletions
diff --git a/third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js b/third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js
index 70798ce..01f43c1 100644
--- a/third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js
+++ b/third_party/WebKit/LayoutTests/fast/canvas/script-tests/canvas-strokePath-shadow.js
@@ -10,19 +10,10 @@ function print(message, color)
document.getElementById("console").appendChild(paragraph);
}
-function shouldNotBe(a, b)
+// Level of tolerance we expect of most pixel comparisons in this test.
+function shouldBeAlmost(_a, _b)
{
- var evalA;
- try {
- evalA = eval(a);
- } catch(e) {
- evalA = e;
- }
-
- if (evalA != b)
- print("PASS " + a + " should not be " + b + " and it's not.", "green")
- else
- print("FAIL " + a + " should not be " + b + " but it is.", "red");
+ shouldBeCloseTo(_a, _b, 2);
}
var canvas = document.createElement('canvas');
@@ -62,53 +53,53 @@ var imageData, data;
// Verify solid shadow.
imageData = ctx.getImageData(650, 300, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '20');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 20);
+shouldBeAlmost('data[2]', 0);
imageData = ctx.getImageData(650, 50, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '20');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 20);
+shouldBeAlmost('data[2]', 0);
imageData = ctx.getImageData(380, 30, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '20');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 20);
+shouldBeAlmost('data[2]', 0);
imageData = ctx.getImageData(400, 40, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '20');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 20);
+shouldBeAlmost('data[2]', 0);
// Verify blurry shadow.
imageData = ctx.getImageData(640, 640, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '0');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 0);
+shouldBeAlmost('data[2]', 0);
shouldNotBe('data[3]', '255');
imageData = ctx.getImageData(650, 400, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '0');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 0);
+shouldBeAlmost('data[2]', 0);
shouldNotBe('data[3]', '255');
imageData = ctx.getImageData(380, 380, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '0');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 0);
+shouldBeAlmost('data[2]', 0);
shouldNotBe('data[3]', '255');
imageData = ctx.getImageData(350, 380, 1, 1);
data = imageData.data;
-shouldBe('data[0]', '255');
-shouldBe('data[1]', '0');
-shouldBe('data[2]', '0');
+shouldBeAlmost('data[0]', 255);
+shouldBeAlmost('data[1]', 0);
+shouldBeAlmost('data[2]', 0);
shouldNotBe('data[3]', '255');