Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 <!-- This is a test for crbug.com/412440, tests meaningful information in | 1 <!-- This is a test for crbug.com/412440, tests meaningful information in |
| 2 WebGL context creation error message. --> | 2 WebGL context creation error message. --> |
| 3 <script src="../../../resources/js-test.js"></script> | 3 <script src="../../../resources/js-test.js"></script> |
| 4 <canvas id="webgl-canvas" width="200" height="200" class="nomargin"></canvas> | 4 <canvas id="webgl-canvas" width="200" height="200" class="nomargin"></canvas> |
| 5 <script> | 5 <script> |
| 6 function main() | 6 function main() |
| 7 { | 7 { |
| 8 if (!window.testRunner) { | 8 if (!window.testRunner) { |
| 9 testFailed("Requires window.testRunner"); | 9 testFailed("Requires window.testRunner"); |
| 10 } else { | 10 } else { |
| 11 initTest(); | 11 initTest(); |
| 12 } | 12 } |
| 13 } | 13 } |
| 14 | 14 |
| 15 function initTest() { | 15 function initTest() { |
| 16 var canvas = document.getElementById("webgl-canvas"); | 16 var canvas = document.getElementById("webgl-canvas"); |
| 17 testRunner.forceNextWebGLContextCreationToFail(); | 17 testRunner.forceNextWebGLContextCreationToFail(); |
| 18 canvas.addEventListener("webglcontextcreationerror", onContextCreationError, f alse); | 18 canvas.addEventListener("webglcontextcreationerror", onContextCreationError, f alse); |
| 19 var gl = canvas.getContext("webgl"); | 19 var gl = canvas.getContext("webgl"); |
| 20 testRunner.dumpAsText(); | 20 testRunner.dumpAsText(); |
| 21 } | 21 } |
| 22 | 22 |
| 23 function onContextCreationError(e) { | 23 function onContextCreationError(e) { |
| 24 var vendoridStr = "VendorId = "; | |
| 25 var deviceidStr = "DeviceId = "; | |
| 24 var vendorInfoStr = "VendorInfo = "; | 26 var vendorInfoStr = "VendorInfo = "; |
| 25 var renderInfoStr = "RendererInfo = "; | 27 var renderInfoStr = "RendererInfo = "; |
| 26 var driverInfoStr = "DriverInfo = "; | 28 var driverInfoStr = "DriverInfo = "; |
| 27 var stringIndex = e.statusMessage.search(vendorInfoStr) + vendorInfoStr.length ; | 29 var stringIndex = e.statusMessage.search(vendoridStr) + vendoridStr.length; |
| 30 var vendoridInfo = e.statusMessage.substring(stringIndex, e.statusMessage.sear ch(deviceidStr) - 2); | |
|
Ken Russell (switch to Gerrit)
2015/01/15 19:30:39
All of these string searches are quite complex and
sivag
2015/01/29 05:49:36
Done.
| |
| 31 stringIndex = e.statusMessage.search(deviceidStr) + deviceidStr.length; | |
| 32 var deviceidInfo = e.statusMessage.substring(stringIndex, e.statusMessage.sear ch(vendorInfoStr) - 2); | |
| 33 stringIndex = e.statusMessage.search(vendorInfoStr) + vendorInfoStr.length; | |
| 28 var vendorInfo = e.statusMessage.substring(stringIndex, e.statusMessage.search (renderInfoStr) - 2); | 34 var vendorInfo = e.statusMessage.substring(stringIndex, e.statusMessage.search (renderInfoStr) - 2); |
| 29 stringIndex = e.statusMessage.search(renderInfoStr) + renderInfoStr.length; | 35 stringIndex = e.statusMessage.search(renderInfoStr) + renderInfoStr.length; |
| 30 var rendererInfo = e.statusMessage.substring(stringIndex, e.statusMessage.sear ch(driverInfoStr) - 2 ); | 36 var rendererInfo = e.statusMessage.substring(stringIndex, e.statusMessage.sear ch(driverInfoStr) - 2 ); |
| 31 stringIndex = e.statusMessage.search(driverInfoStr) + driverInfoStr.length; | 37 stringIndex = e.statusMessage.search(driverInfoStr) + driverInfoStr.length; |
| 32 var driverInfo = e.statusMessage.substring(stringIndex, e.statusMessage.length - 1); | 38 var driverInfo = e.statusMessage.substring(stringIndex, e.statusMessage.length - 1); |
| 33 if((e.statusMessage.search("GPUInfoCollectionFailure") != -1) || | 39 if((e.statusMessage.search("GPUInfoCollectionFailure") != -1) || |
| 34 vendorInfo.length > 0 || | 40 (vendoridInfo.length > 0 && |
| 35 rendererInfo.length > 0 || | 41 deviceidInfo.length > 0 && |
| 36 driverInfo.length > 0) | 42 rendererInfo.length > 0 && |
| 43 driverInfo.length > 0 )) | |
| 37 testPassed("Status message displayed for webglcontextcreationerror"); | 44 testPassed("Status message displayed for webglcontextcreationerror"); |
| 38 else | 45 else |
| 39 testFailed("Context creation error test failed"); | 46 testFailed("Context creation error test failed"); |
| 40 } | 47 } |
| 41 main(); | 48 main(); |
| 42 </script> | 49 </script> |
| OLD | NEW |