Support passing preferLowPowerToHighPerformance and failIfMajorPerformanceCaveat
[WebKit-https.git] / LayoutTests / fast / canvas / webgl / context-creation-attributes.html
1 <script>
2 if (window.testRunner)
3     window.testRunner.dumpAsText();
4
5 function describe(object) {
6     result = {};
7     if (typeof object === "function")
8         object = object.prototype;
9     for (let o = object; o; o = o.__proto__) {
10         for (let name of Object.getOwnPropertyNames(o)) {
11             result[name] = object[name];
12         }
13     }
14     return result;
15 }
16
17 function testContextCreation(parameters)
18 {
19     var canvas = document.createElement("canvas");
20     var gl = canvas.getContext("webgl", parameters || {});
21     var attributes = gl.getContextAttributes();
22     var result = document.createElement("pre");
23     result.textContent = JSON.stringify(describe(attributes));
24     document.body.appendChild(result);
25 }
26
27 function run() {
28     testContextCreation({});
29     testContextCreation({stencil: true});
30     testContextCreation({preferLowPowerToHighPerformance: true});
31     testContextCreation({failIfMajorPerformanceCaveat: true});
32 }
33
34 window.addEventListener("load", run, false);
35 </script>
36 <p>
37     Note that some of the values tested here might not be supported, and thus should return the default values.
38 </p>