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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
<!DOCTYPE HTML>
<html>
<head>
<meta charset='utf-8'/>
<title>
WebGL Conformance Test Suite Single Test Wrapper
</title>
<link rel='stylesheet' type='text/css' href='iframe-passthrough.css'/>
</head>
<body>
<iframe id='test-frame'></iframe>
<script>
'use strict';
var frameElem = document.getElementById('test-frame');
////////////////////////////////////////////////////////////////////////
window.webglTestHarness = {
reportResults(pathname, success, message) {
if (parent) {
parent.ok(success, message);
} else {
console.log('ok(' + success + ', \'' + message + '\')');
}
},
notifyFinished(testPath) {
console.error('webglTestHarness.notifyFinished');
if (parent) {
parent.SimpleTest.finish();
} else {
console.log('SimpleTest.finish()');
}
},
};
if (parent) {
parent.SimpleTest.waitForExplicitFinish();
parent.SimpleTest.requestFlakyTimeout('untriaged');
try {
let timeoutLengthMultiplier;
if (navigator.appVersion.includes('Android')) {
// From layout/tools/reftest/reftest.js:
var version = SpecialPowers.Services.sysinfo.getProperty('version');
var kAndroidVersion2_3 = 9;
if (version == kAndroidVersion2_3) {
timeoutLengthMultiplier = 2.0;
}
} else if (SpecialPowers.Services.sysinfo.getProperty('isMinGW')) {
timeoutLengthMultiplier = 2.0;
}
if (timeoutLengthMultiplier) {
parent.SimpleTest.requestLongerTimeout(timeoutLengthMultiplier);
}
} catch (e) {
console.error('Warning: No SpecialPowers.');
}
};
////////////////////////////////////////////////////////////////////////
function runTest() {
var testPath = location.search.substr(1);
console.log('testPath: ' + testPath);
frameElem.src = testPath;
}
SpecialPowers.pushPrefEnv({"set": [
['dom.workers.requestAnimationFrame', true],
['gfx.offscreencanvas.enabled', true],
['webgl.force-enabled', true],
['webgl.enable-draft-extensions', true],
]}, runTest);
</script>
</body>
</html>
|