Bug 1415114: Remove 2D Canvas Mochitests in favour of Web Platform Tests r=jrmuizel
authorDavid Burns <dburns@mozilla.com>
Mon, 25 Nov 2019 12:26:44 +0000
changeset 503652 00fa39c786806259cb7532bc8af290a0214d9952
parent 503651 b4755981c1382cb88fed4e4fcff3ba73779b2080
child 503653 ce5c10092b8e6ef45d6f2d0d8cc6e69e5d877d0a
push id101446
push userdburns@mozilla.com
push dateMon, 25 Nov 2019 13:15:13 +0000
treeherderautoland@00fa39c78680 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjrmuizel
bugs1415114
milestone72.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1415114: Remove 2D Canvas Mochitests in favour of Web Platform Tests r=jrmuizel These tests are already covered by Web Platform Tests which are run against other browsers guaranteeing interop where mochitest does not. Differential Revision: https://phabricator.services.mozilla.com/D54312
dom/canvas/test/mochitest.ini
dom/canvas/test/test_2d.composite.canvas.destination-atop.html
dom/canvas/test/test_2d.composite.canvas.destination-in.html
dom/canvas/test/test_2d.composite.canvas.lighter.html
dom/canvas/test/test_2d.composite.canvas.source-in.html
dom/canvas/test/test_2d.composite.canvas.source-out.html
dom/canvas/test/test_2d.composite.canvas.xor.html
dom/canvas/test/test_2d.composite.clip.lighter.html
dom/canvas/test/test_2d.composite.clip.xor.html
dom/canvas/test/test_2d.composite.image.destination-atop.html
dom/canvas/test/test_2d.composite.image.destination-in.html
dom/canvas/test/test_2d.composite.image.lighter.html
dom/canvas/test/test_2d.composite.image.source-in.html
dom/canvas/test/test_2d.composite.image.source-out.html
dom/canvas/test/test_2d.composite.image.xor.html
dom/canvas/test/test_2d.composite.solid.lighter.html
dom/canvas/test/test_2d.composite.solid.xor.html
dom/canvas/test/test_2d.composite.transparent.lighter.html
dom/canvas/test/test_2d.composite.transparent.xor.html
dom/canvas/test/test_2d.composite.uncovered.fill.destination-atop.html
dom/canvas/test/test_2d.composite.uncovered.fill.destination-in.html
dom/canvas/test/test_2d.composite.uncovered.fill.source-in.html
dom/canvas/test/test_2d.composite.uncovered.fill.source-out.html
dom/canvas/test/test_2d.composite.uncovered.image.destination-atop.html
dom/canvas/test/test_2d.composite.uncovered.image.destination-in.html
dom/canvas/test/test_2d.composite.uncovered.image.source-in.html
dom/canvas/test/test_2d.composite.uncovered.image.source-out.html
dom/canvas/test/test_2d.composite.uncovered.pattern.destination-atop.html
dom/canvas/test/test_2d.composite.uncovered.pattern.destination-in.html
dom/canvas/test/test_2d.composite.uncovered.pattern.source-in.html
dom/canvas/test/test_2d.composite.uncovered.pattern.source-out.html
--- a/dom/canvas/test/mochitest.ini
+++ b/dom/canvas/test/mochitest.ini
@@ -39,111 +39,59 @@ support-files =
   ../../media/test/320x240.ogv
 
 [test_2d.clearRect.image.offscreen.html]
 [test_2d.clip.winding.html]
 [test_2d.composite.canvas.color-burn.html]
 [test_2d.composite.canvas.color-dodge.html]
 [test_2d.composite.canvas.color.html]
 [test_2d.composite.canvas.darken.html]
-[test_2d.composite.canvas.destination-atop.html]
-[test_2d.composite.canvas.destination-in.html]
 [test_2d.composite.canvas.difference.html]
 [test_2d.composite.canvas.exclusion.html]
 [test_2d.composite.canvas.hard-light.html]
 [test_2d.composite.canvas.hue.html]
 [test_2d.composite.canvas.lighten.html]
 [test_2d.composite.canvas.luminosity.html]
 [test_2d.composite.canvas.multiply.html]
 [test_2d.composite.canvas.overlay.html]
 [test_2d.composite.canvas.saturation.html]
 [test_2d.composite.canvas.screen.html]
 [test_2d.composite.canvas.soft-light.html]
-[test_2d.composite.canvas.source-in.html]
-[test_2d.composite.canvas.source-out.html]
-[test_2d.composite.image.destination-atop.html]
-[test_2d.composite.image.destination-in.html]
-[test_2d.composite.image.source-in.html]
-[test_2d.composite.image.source-out.html]
 # xor and lighter aren't well handled by cairo; they mostly work, but we don't want
 # to test that
-[test_2d.composite.solid.xor.html]
-disabled =
-[test_2d.composite.solid.lighter.html]
-disabled =
-[test_2d.composite.transparent.xor.html]
-disabled =
-[test_2d.composite.transparent.lighter.html]
-disabled =
-[test_2d.composite.image.xor.html]
-disabled =
-[test_2d.composite.image.lighter.html]
-disabled =
-[test_2d.composite.canvas.xor.html]
-disabled =
-[test_2d.composite.canvas.lighter.html]
-disabled =
-[test_2d.composite.clip.xor.html]
-disabled =
-[test_2d.composite.clip.lighter.html]
-disabled =
 [test_2d.composite.solid.color-burn.html]
 [test_2d.composite.solid.color-dodge.html]
 [test_2d.composite.solid.color.html]
 [test_2d.composite.solid.darken.html]
 [test_2d.composite.solid.difference.html]
 [test_2d.composite.solid.exclusion.html]
 [test_2d.composite.solid.hard-light.html]
 [test_2d.composite.solid.hue.html]
 [test_2d.composite.solid.lighten.html]
 [test_2d.composite.solid.luminosity.html]
 [test_2d.composite.solid.multiply.html]
 [test_2d.composite.solid.overlay.html]
 [test_2d.composite.solid.saturation.html]
 [test_2d.composite.solid.screen.html]
 [test_2d.composite.solid.soft-light.html]
-[test_2d.composite.uncovered.image.destination-atop.html]
-# This test fails in Suite on Linux for some reason, disable it there
-skip-if = (os == 'linux' && buildapp == 'suite')
 [test_2d.composite.uncovered.fill.color-burn.html]
 [test_2d.composite.uncovered.fill.color-dodge.html]
 [test_2d.composite.uncovered.fill.color.html]
 [test_2d.composite.uncovered.fill.darken.html]
 [test_2d.composite.uncovered.fill.difference.html]
 [test_2d.composite.uncovered.fill.exclusion.html]
 [test_2d.composite.uncovered.fill.hard-light.html]
 [test_2d.composite.uncovered.fill.hue.html]
 [test_2d.composite.uncovered.fill.lighten.html]
 [test_2d.composite.uncovered.fill.luminosity.html]
 [test_2d.composite.uncovered.fill.multiply.html]
 [test_2d.composite.uncovered.fill.overlay.html]
 [test_2d.composite.uncovered.fill.saturation.html]
 [test_2d.composite.uncovered.fill.screen.html]
 [test_2d.composite.uncovered.fill.soft-light.html]
-# Tests that fail on non-Mac (bug 407107)
-[test_2d.composite.uncovered.fill.source-in.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.fill.destination-in.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.fill.source-out.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.fill.destination-atop.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.image.destination-in.html]
-[test_2d.composite.uncovered.image.source-in.html]
-[test_2d.composite.uncovered.image.source-out.html]
-# Tests that fail on non-Mac (bug 407107)
-[test_2d.composite.uncovered.pattern.source-in.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.pattern.destination-in.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.pattern.source-out.html]
-skip-if = toolkit != 'cocoa'
-[test_2d.composite.uncovered.pattern.destination-atop.html]
-skip-if = toolkit != 'cocoa'
 [test_2d.drawImage.zerocanvas.html]
 [test_2d.fill.winding.html]
 [test_2d.fill.pattern.imageSmoothingEnabled.html]
 # These tests do not pass on any platform; Quartz backend won't pass them
 # because we fall back to pixman when one circle doesn't contain the other.
 # See bug 512647.
 [test_2d.gradient.radial.cone.shape2.html]
 disabled = bug 512647
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.destination-atop.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.destination-atop</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-atop';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 127,255,127,191, "50,25", "127,255,127,191", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.destination-in.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.destination-in</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-in';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 0,255,255,95, "50,25", "0,255,255,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.lighter.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.lighter</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'lighter';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 191,255,127,255, "50,25", "191,255,127,255", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.source-in.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.source-in</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-in';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 255,255,0,95, "50,25", "255,255,0,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.source-out.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.source-out</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-out';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 255,255,0,95, "50,25", "255,255,0,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.canvas.xor.html
+++ /dev/null
@@ -1,44 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.canvas.xor</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-var canvas2 = document.createElement('canvas');
-canvas2.width = canvas.width;
-canvas2.height = canvas.height;
-var ctx2 = canvas2.getContext('2d');
-ctx2.drawImage(document.getElementById('yellow75.png'), 0, 0);
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'xor';
-ctx.drawImage(canvas2, 0, 0);
-isPixel(ctx, 50,25, 191,255,63,127, "50,25", "191,255,63,127", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.clip.lighter.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.clip.lighter</title>
-<!-- Testing: fill() does not affect pixels outside the clip region. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = '#0f0';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'lighter';
-ctx.rect(-20, -20, 10, 10);
-ctx.clip();
-ctx.fillStyle = '#f00';
-ctx.fillRect(0, 0, 50, 50);
-isPixel(ctx, 25,25, 0,255,0,255, "25,25", "0,255,0,255", 0);
-isPixel(ctx, 75,25, 0,255,0,255, "75,25", "0,255,0,255", 0);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.clip.xor.html
+++ /dev/null
@@ -1,43 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.clip.xor</title>
-<!-- Testing: fill() does not affect pixels outside the clip region. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = '#0f0';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'xor';
-ctx.rect(-20, -20, 10, 10);
-ctx.clip();
-ctx.fillStyle = '#f00';
-ctx.fillRect(0, 0, 50, 50);
-isPixel(ctx, 25,25, 0,255,0,255, "25,25", "0,255,0,255", 0);
-isPixel(ctx, 75,25, 0,255,0,255, "75,25", "0,255,0,255", 0);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.destination-atop.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.destination-atop</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-atop';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 127,255,127,191, "50,25", "127,255,127,191", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.destination-in.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.destination-in</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-in';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 0,255,255,95, "50,25", "0,255,255,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.lighter.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.lighter</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'lighter';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 191,255,127,255, "50,25", "191,255,127,255", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.source-in.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.source-in</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-in';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 255,255,0,95, "50,25", "255,255,0,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.source-out.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.source-out</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-out';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 255,255,0,95, "50,25", "255,255,0,95", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.image.xor.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.image.xor</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'xor';
-ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);
-isPixel(ctx, 50,25, 191,255,63,127, "50,25", "191,255,63,127", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow75.png" id="yellow75.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.solid.lighter.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.solid.lighter</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 1.0)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'lighter';
-ctx.fillStyle = 'rgba(255, 255, 0, 1.0)';
-ctx.fillRect(0, 0, 100, 50);
-isPixel(ctx, 50,25, 255,255,255,255, "50,25", "255,255,255,255", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.solid.xor.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.solid.xor</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 1.0)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'xor';
-ctx.fillStyle = 'rgba(255, 255, 0, 1.0)';
-ctx.fillRect(0, 0, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.transparent.lighter.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.transparent.lighter</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'lighter';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.fillRect(0, 0, 100, 50);
-isPixel(ctx, 50,25, 0,127,191,255, "50,25", "0,127,191,255", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.transparent.xor.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.transparent.xor</title>
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'xor';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.fillRect(0, 0, 100, 50);
-isPixel(ctx, 50,25, 0,63,191,127, "50,25", "0,63,191,127", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.fill.destination-atop.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.fill.destination-atop</title>
-<!-- Testing: fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-atop';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.translate(0, 25);
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.fill.destination-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.fill.destination-in</title>
-<!-- Testing: fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-in';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.translate(0, 25);
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.fill.source-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.fill.source-in</title>
-<!-- Testing: fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-in';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.translate(0, 25);
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.fill.source-out.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.fill.source-out</title>
-<!-- Testing: fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 0, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-out';
-ctx.fillStyle = 'rgba(0, 0, 255, 0.75)';
-ctx.translate(0, 25);
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.image.destination-atop.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.image.destination-atop</title>
-<!-- Testing: drawImage() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-atop';
-ctx.drawImage(document.getElementById('yellow.png'), 40, 40, 10, 10, 40, 50, 10, 10)
-isPixel(ctx, 15,15, 0,0,0,0, "15,15", "0,0,0,0", 5);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.image.destination-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.image.destination-in</title>
-<!-- Testing: drawImage() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-in';
-ctx.drawImage(document.getElementById('yellow.png'), 40, 40, 10, 10, 40, 50, 10, 10)
-isPixel(ctx, 15,15, 0,0,0,0, "15,15", "0,0,0,0", 5);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.image.source-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.image.source-in</title>
-<!-- Testing: drawImage() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-in';
-ctx.drawImage(document.getElementById('yellow.png'), 40, 40, 10, 10, 40, 50, 10, 10)
-isPixel(ctx, 15,15, 0,0,0,0, "15,15", "0,0,0,0", 5);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.image.source-out.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.image.source-out</title>
-<!-- Testing: drawImage() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-out';
-ctx.drawImage(document.getElementById('yellow.png'), 40, 40, 10, 10, 40, 50, 10, 10)
-isPixel(ctx, 15,15, 0,0,0,0, "15,15", "0,0,0,0", 5);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.pattern.destination-atop.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.pattern.destination-atop</title>
-<!-- Testing: Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-atop';
-ctx.fillStyle = ctx.createPattern(document.getElementById('yellow.png'), 'no-repeat');
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.pattern.destination-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.pattern.destination-in</title>
-<!-- Testing: Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'destination-in';
-ctx.fillStyle = ctx.createPattern(document.getElementById('yellow.png'), 'no-repeat');
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.pattern.source-in.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.pattern.source-in</title>
-<!-- Testing: Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-in';
-ctx.fillStyle = ctx.createPattern(document.getElementById('yellow.png'), 'no-repeat');
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-
deleted file mode 100644
--- a/dom/canvas/test/test_2d.composite.uncovered.pattern.source-out.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML>
-<title>Canvas test: 2d.composite.uncovered.pattern.source-out</title>
-<!-- Testing: Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged. -->
-<script src="/tests/SimpleTest/SimpleTest.js"></script>
-<link rel="stylesheet" href="/tests/SimpleTest/test.css">
-<body>
-<canvas id="c" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
-<script>
-function isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    ok(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-function todo_isPixel(ctx, x,y, r,g,b,a, pos, colour, d) {
-    var pixel = ctx.getImageData(x, y, 1, 1);
-    var pr = pixel.data[0],
-        pg = pixel.data[1],
-        pb = pixel.data[2],
-        pa = pixel.data[3];
-    todo(r-d <= pr && pr <= r+d &&
-       g-d <= pg && pg <= g+d &&
-       b-d <= pb && pb <= b+d &&
-       a-d <= pa && pa <= a+d,
-       "pixel "+pos+" is "+pr+","+pg+","+pb+","+pa+"; expected "+colour+" +/- "+d);
-}
-
-SimpleTest.waitForExplicitFinish();
-addLoadEvent(function () {
-
-var canvas = document.getElementById('c');
-var ctx = canvas.getContext('2d');
-
-
-ctx.fillStyle = 'rgba(0, 255, 255, 0.5)';
-ctx.fillRect(0, 0, 100, 50);
-ctx.globalCompositeOperation = 'source-out';
-ctx.fillStyle = ctx.createPattern(document.getElementById('yellow.png'), 'no-repeat');
-ctx.fillRect(0, 50, 100, 50);
-isPixel(ctx, 50,25, 0,0,0,0, "50,25", "0,0,0,0", 5);
-
-SimpleTest.finish();
-
-});
-</script>
-<img src="image_yellow.png" id="yellow.png" class="resource">
-