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
48
49
50
|
description("Series of tests for canvas alpha");
if (window.testRunner)
testRunner.dumpAsTextWithPixelResults();
var canvas1 = document.getElementById("canvas1");
var canvas2 = document.getElementById("canvas2");
var canvas3 = document.getElementById("canvas3");
var canvas4 = document.getElementById("canvas4");
var ctx1 = canvas1.getContext("2d");
var ctx2 = canvas2.getContext("2d", {} );
var ctx3 = canvas3.getContext("2d", { alpha: false } );
var ctx4 = canvas4.getContext("2d", { alpha: true } );
shouldBe("ctx1.getContextAttributes().alpha", "true");
var imgData1 = ctx1.getImageData(0, 0, 1, 1);
shouldBe("imgData1.data[0]", "0");
shouldBe("imgData1.data[1]", "0");
shouldBe("imgData1.data[2]", "0");
shouldBe("imgData1.data[3]", "0");
shouldBe("ctx2.getContextAttributes().alpha", "true");
var imgData2 = ctx2.getImageData(0, 0, 1, 1);
shouldBe("imgData2.data[0]", "0");
shouldBe("imgData2.data[1]", "0");
shouldBe("imgData2.data[2]", "0");
shouldBe("imgData2.data[3]", "0");
shouldBe("ctx3.getContextAttributes().alpha", "false");
shouldBe("ctx4.getContextAttributes().alpha", "true");
var imgData4 = ctx4.getImageData(0, 0, 1, 1);
shouldBe("imgData4.data[0]", "0");
shouldBe("imgData4.data[1]", "0");
shouldBe("imgData4.data[2]", "0");
shouldBe("imgData4.data[3]", "0");
// Check that mutating the returned value of getContextAttributes() doesn't
// affect the existing canvas, or the values of subsequent calls to
// getContextAttributes().
var attrs = ctx4.getContextAttributes();
shouldBe("attrs.alpha", "true");
attrs.alpha = false;
var imgData4 = ctx4.getImageData(0, 0, 1, 1);
shouldBe("ctx4.getContextAttributes().alpha", "true");
shouldBe("imgData4.data[0]", "0");
shouldBe("imgData4.data[1]", "0");
shouldBe("imgData4.data[2]", "0");
shouldBe("imgData4.data[3]", "0");
|