blob: ede14731c142e2de1c42e3a1dae976018475ae26 (
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
|
<!-- This is a test for crbug.com/412440, tests meaningful information in
WebGL context creation error message. -->
<script src="../../../resources/js-test.js"></script>
<canvas id="webgl-canvas" width="200" height="200" class="nomargin"></canvas>
<script>
function main()
{
if (!window.testRunner) {
testFailed("Requires window.testRunner");
} else {
initTest();
}
}
function initTest() {
var canvas = document.getElementById("webgl-canvas");
testRunner.forceNextWebGLContextCreationToFail();
canvas.addEventListener("webglcontextcreationerror", onContextCreationError, false);
var gl = canvas.getContext("webgl");
testRunner.dumpAsText();
}
function onContextCreationError(e) {
if (e.statusMessage.length == 0) {
testFailed("webglcontextcreationerror test failed");
return;
}
var splitStatus = e.statusMessage.split(",");
var error = "";
for (var i = 1; i < splitStatus.length; i++) {
var gpuInfoStr = splitStatus[i].split(" = ");
var key = gpuInfoStr[0].trim();
var value = gpuInfoStr[1];
if (key == "DEVICE" && (value == "0x0000" || value == ""))
error = error + "DeviceID is null.";
if (key == "VENDOR" && (value == "0x0000" || value == ""))
error = error + "VendorID is null.";
}
if (error.length)
testFailed("webglcontextcreationerror test failed " + error);
else
testPassed("Status message displayed for webglcontextcreationerror");
}
main();
</script>
|