| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <script src="../resources/testharness.js"></script> | 2 <script src="../resources/testharness.js"></script> |
| 3 <script src="../resources/testharnessreport.js"></script> | 3 <script src="../resources/testharnessreport.js"></script> |
| 4 <script src="../resources/mojo-helpers.js"></script> | 4 <script src="../resources/mojo-helpers.js"></script> |
| 5 <script src="resources/fake-vr-displays.js"></script> | 5 <script src="resources/fake-vr-displays.js"></script> |
| 6 <script src="resources/mock-vr-service.js"></script> | 6 <script src="resources/mock-vr-service.js"></script> |
| 7 <canvas id="webgl-canvas"></canvas> | 7 <canvas id="webgl-canvas"></canvas> |
| 8 <script src="resources/presentation-setup.js"></script> | 8 <script src="resources/presentation-setup.js"></script> |
| 9 <script> | 9 <script> |
| 10 let fakeDisplays = fakeVRDisplays(); | 10 let fakeDisplays = fakeVRDisplays(); |
| 11 | 11 |
| 12 vr_test((service) => { | 12 vr_test( (t) => { |
| 13 return navigator.getVRDisplays().then(displays => { | 13 return navigator.getVRDisplays().then( (displays) => { |
| 14 assert_true(displays != null); | 14 var display = displays[0]; |
| 15 assert_equals(1, displays.length); | 15 var max_layers = display.capabilities.maxLayers; |
| 16 var max_layers = displays[0].capabilities.maxLayers; | 16 var layers = []; |
| 17 var layers = []; | 17 for (var i = 0; i <= max_layers; ++i) { |
| 18 for (var i = 0; i <= max_layers; ++i) { | 18 layers.push({ source : webglCanvas }); |
| 19 layers.push({ source : webglCanvas }); | 19 } |
| 20 } | 20 |
| 21 var asyncTest = async_test( | 21 runWithUserGesture( () => { |
| 22 "requestPresent rejects and does not present"); | 22 display.requestPresent(layers).then( () => { |
| 23 runWithUserGesture( () => { | 23 t.step( () => { |
| 24 displays[0].requestPresent(layers).then( () => { | 24 assert_unreached(); |
| 25 asyncTest.step( () => { | 25 }, "Display should not be presenting"); |
| 26 assert_unreached(); | 26 }, (err) => { |
| 27 }, "Display should not be presenting"); | 27 t.step( () => { |
| 28 }, (err) => { | 28 assert_false(display.isPresenting); |
| 29 asyncTest.step( () => { | 29 }, "requestPresent rejected and not presenting"); |
| 30 assert_false(displays[0].isPresenting); | 30 }).then( () => { |
| 31 }, "requestPresent rejected and not presenting"); | 31 t.done(); |
| 32 }).then( () => { | |
| 33 asyncTest.done(); | |
| 34 }); | |
| 35 }); | 32 }); |
| 36 }); | 33 }); |
| 37 }, [fakeDisplays['Pixel']], | 34 }, (err) => { |
| 38 'Test requestPresent rejects if provided too many layers'); | 35 t.step( () => { |
| 36 assert_unreached(err); |
| 37 }, "getVRDisplays rejected"); |
| 38 t.done(); |
| 39 }); |
| 40 }, [fakeDisplays["Pixel"]], |
| 41 "Test requestPresent rejects if provided too many layers"); |
| 39 | 42 |
| 40 </script> | 43 </script> |
| OLD | NEW |