Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(465)

Side by Side Diff: third_party/WebKit/LayoutTests/vr/getLayers_update.html

Issue 2624263003: Add more WebVR layout tests and fix small issues they found (Closed)
Patch Set: Added a few clarifying comments Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <script src="resources/test-constants.js"></script> 7 <script src="resources/test-constants.js"></script>
8 <canvas id="webgl-canvas"></canvas> 8 <canvas id="webgl-canvas"></canvas>
9 <script src="resources/presentation-setup.js"></script> 9 <script src="resources/presentation-setup.js"></script>
10 <canvas id="webgl-canvas2"></canvas>
10 <script> 11 <script>
12 var webglCanvas2 = document.getElementById("webgl-canvas2");
13 var gl2 = webglCanvas2.getContext("webgl", glAttributes);
11 let fakeDisplays = fakeVRDisplays(); 14 let fakeDisplays = fakeVRDisplays();
12 15
13 vr_test( (t) => { 16 vr_test( (t) => {
14 return navigator.getVRDisplays().then( (displays) => { 17 return navigator.getVRDisplays().then( (displays) => {
15 var display = displays[0]; 18 var display = displays[0];
16 19
17 t.step( () => { 20 t.step( () => {
18 assert_equals(display.getLayers().length, 0); 21 assert_equals(display.getLayers().length, 0);
19 }, "No layers initially returned"); 22 }, "No layers initially returned");
20 23
21 runWithUserGesture( () => { 24 runWithUserGesture( () => {
22 display.requestPresent([{ source : webglCanvas }]).then( () => { 25 display.requestPresent([{ source : webglCanvas }]).then( () => {
23 t.step( () => { 26 t.step( () => {
24 let layers = display.getLayers(); 27 assert_equals(display.getLayers()[0].source, webglCanvas);
25 assert_equals(layers.length, 1); 28 }, "Initial layer source matches first canvas");
26 let layer = layers[0]; 29 display.requestPresent([{ source : webglCanvas2 }]).then( () => {
27 30 t.step( () => {
28 assert_equals(layer.source, webglCanvas); 31 assert_equals(display.getLayers()[0].source, webglCanvas2);
29 assert_equals(layer.leftBounds.length, 4); 32 assert_not_equals(display.getLayers()[0].source, webglCanvas);
30 assert_equals(layer.rightBounds.length, 4); 33 }, "Source now matches second canvas");
31 34 }, (err) => {
32 let expectedLeft = [0.0, 0.0, 0.5, 1.0]; 35 t.step( () => {
33 let expectedRight = [0.5, 0.0, 0.5, 1.0]; 36 assert_unreached(err);
34 for (let i = 0; i < layer.leftBounds.length; i++) { 37 }, "Second requestPresent failed")
35 assert_approx_equals(layer.leftBounds[i], expectedLeft[i], 38 }).then( () => {
36 FLOAT_EPSILON); 39 t.done();
37 assert_approx_equals(layer.rightBounds[i], expectedRight[i], 40 });
38 FLOAT_EPSILON);
39 }
40 }, "Layer is correct");
41 }, (err) => { 41 }, (err) => {
42 t.step( () => { 42 t.step( () => {
43 assert_unreached(); 43 assert_unreached();
44 }, "requestPresent failed"); 44 }, "First requestPresent failed");
45 }).then( () => {
46 t.done();
47 }); 45 });
48 }); 46 });
49 }, (err) => { 47 }, (err) => {
50 t.step( () => { 48 t.step( () => {
51 assert_unreached(); 49 assert_unreached();
52 }, "getVRDisplays rejected"); 50 }, "getVRDisplays rejected");
53 t.done(); 51 t.done();
54 }); 52 });
55 }, [fakeDisplays["Pixel"]], 53 }, [fakeDisplays["Pixel"]],
56 "Test getLayers returns an empty array when not presenting"); 54 "Test getLayers returns updated source layer when requestPresent is re-called");
57 55
58 </script> 56 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698