| Index: LayoutTests/compositing/webgl/webgl-error-response.html
|
| diff --git a/LayoutTests/compositing/webgl/webgl-error-response.html b/LayoutTests/compositing/webgl/webgl-error-response.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d64f9b0b11ad04766b20c929d1bff05efc13d51f
|
| --- /dev/null
|
| +++ b/LayoutTests/compositing/webgl/webgl-error-response.html
|
| @@ -0,0 +1,41 @@
|
| +<!-- 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(true);
|
| + if (canvas.addEventListener) {
|
| + canvas.addEventListener("webglcontextcreationerror", onContextCreationError, false);
|
| + }
|
| + var gl = canvas.getContext("webgl");
|
| +}
|
| +
|
| +function onContextCreationError(e) {
|
| + var vendorInfoStr = "VendorInfo = ";
|
| + var renderInfoStr = "RendererInfo = ";
|
| + var driverInfoStr = "DriverInfo = ";
|
| + var stringIndex = e.statusMessage.search(vendorInfoStr) + vendorInfoStr.length;
|
| + var vendorInfo = e.statusMessage.substring(stringIndex, e.statusMessage.search(renderInfoStr) - 2);
|
| + stringIndex = e.statusMessage.search(renderInfoStr) + renderInfoStr.length;
|
| + var rendererInfo = e.statusMessage.substring(stringIndex, e.statusMessage.search(driverInfoStr) - 2 );
|
| + stringIndex = e.statusMessage.search(driverInfoStr) + driverInfoStr.length;
|
| + var driverInfo = e.statusMessage.substring(stringIndex, e.statusMessage.length - 1);
|
| + if(vendorInfo.length > 0 && rendererInfo.length > 0 && driverInfo.length > 0)
|
| + testPassed("GPU info fetched for webglcontextcreationerror");
|
| + else
|
| + testFailed("Context creation error test failed");
|
| + testRunner.dumpAsText();
|
| +}
|
| +main();
|
| +</script>
|
|
|