Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<title>WebGL test: Check that WebGL works (or not) if it should (or should not).</title>
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" href="/tests/SimpleTest/test.css">
<script src="driver-info.js"></script>
<canvas id="c"></canvas>
function test() {
ok(SpecialPowers.getBoolPref('webgl.force-enabled'), 'WebGL should be force-enabled.');
var shouldSucceed = true;
var shouldFail = false;
if (DriverInfo.getOS() == DriverInfo.OS.ANDROID &&
DriverInfo.getOSVersion() < 15)
// Consider 'random'. Actually, ARMv6 fails, and ARMv7 succeeds, but we have
// not been successful at determining this from JS. (see bug 917478)
shouldSucceed = false;
shouldFail = false;
var gl = c.getContext('webgl');
if (shouldSucceed) {
ok(gl, 'Expected WebGL creation to succeed.');
if (shouldFail) {
ok(!gl, 'Expected WebGL creation to fail.');
var prefArrArr = [
['webgl.force-enabled', true]
var prefEnv = {'set': prefArrArr};
SpecialPowers.pushPrefEnv(prefEnv, test);