| 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((service) => { |
| 13 return navigator.getVRDisplays().then(displays => { | 13 return navigator.getVRDisplays().then(displays => { |
| 14 assert_true(displays != null); | 14 assert_true(displays != null); |
| 15 assert_equals(1, displays.length); | 15 assert_equals(1, displays.length); |
| 16 var max_layers = displays[0].capabilities.maxLayers; |
| 17 var layers = []; |
| 18 for (var i = 0; i <= max_layers; ++i) { |
| 19 layers.push({ source : webglCanvas }); |
| 20 } |
| 16 var asyncTest = async_test( | 21 var asyncTest = async_test( |
| 17 "requestPresent rejects and does not present"); | 22 "requestPresent rejects and does not present"); |
| 18 runWithUserGesture( () => { | 23 runWithUserGesture( () => { |
| 19 displays[0].requestPresent([{ source : webglCanvas }]).then( () => { | 24 displays[0].requestPresent(layers).then( () => { |
| 20 asyncTest.step( () => { | 25 asyncTest.step( () => { |
| 21 assert_unreached(); | 26 assert_unreached(); |
| 22 }, "Display should be presenting"); | 27 }, "Display should not be presenting"); |
| 23 }, (err) => { | 28 }, (err) => { |
| 24 asyncTest.step( () => { | 29 asyncTest.step( () => { |
| 25 assert_false(displays[0].isPresenting); | 30 assert_false(displays[0].isPresenting); |
| 26 }, "requestPresent rejected and not presenting"); | 31 }, "requestPresent rejected and not presenting"); |
| 27 }).then( () => { | 32 }).then( () => { |
| 28 asyncTest.done(); | 33 asyncTest.done(); |
| 29 }); | 34 }); |
| 30 }); | 35 }); |
| 31 }); | 36 }); |
| 32 }, [fakeDisplays['FakeMagicWindowOnly']], | 37 }, [fakeDisplays['Pixel']], |
| 33 'Test requestPresent rejects if display does not support it'); | 38 'Test requestPresent rejects if provided too many layers'); |
| 34 | 39 |
| 35 </script> | 40 </script> |
| OLD | NEW |