summaryrefslogtreecommitdiffstats
path: root/dom/canvas/test/test_toBlob.html
blob: bcffdc0f16a640afcd4d7161ceb1f57acfb4afa0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!DOCTYPE HTML>
<title>Canvas test: toBlob</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 BlobListener(type, canvas, callback, file)
{
  is(file.type, type,
     "When a valid type is specified that should be returned");
  var reader = new FileReader();
  reader.onload =
    function(e) {
      is(e.target.result, canvas.toDataURL(type),
  "<canvas>.toBlob() should equal <canvas>.toDataURL()");
      callback(canvas);
    };
  reader.readAsDataURL(file);
}

function test1(canvas)
{
  canvas.toBlob(BlobListener.bind(undefined, "image/png", canvas, test2));
}

function test2(canvas)
{
  canvas.toBlob(
    BlobListener.bind(undefined, "image/jpeg", canvas, SimpleTest.finish),
    "image/jpeg");
}

SimpleTest.waitForExplicitFinish();
addLoadEvent(function () {

var canvas = document.getElementById('c');
var ctx = canvas.getContext('2d');
ctx.drawImage(document.getElementById('yellow75.png'), 0, 0);

test1(canvas);

});
</script>
<img src="image_yellow75.png" id="yellow75.png" class="resource">