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

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

Issue 2659853006: Add getFrameData and getPose layout tests (Closed)
Patch Set: Add more tests Created 3 years, 10 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
(Empty)
1 <!DOCTYPE html>
2 <script src="../resources/testharness.js"></script>
3 <script src="../resources/testharnessreport.js"></script>
4 <script src="../resources/mojo-helpers.js"></script>
5 <script src="resources/fake-vr-displays.js"></script>
6 <script src="resources/mock-vr-service.js"></script>
7 <script src="resources/test-constants.js"></script>
8 <script>
9 let fakeDisplays = fakeVRDisplays();
10
11 vr_test( (t, mock_service) => {
12 return navigator.getVRDisplays().then( (displays) => {
13 var display = displays[0];
14 var expected_pose = VALID_POSE;
15 var fd = new VRFrameData();
16 var counter = 0;
17
18 function onFrame() {
19 display.requestAnimationFrame(onFrame);
20 if (counter == 0) {
21 t.step( () => {
22 assert_false(display.getFrameData(fd));
23 }, "Expecting to not get framedata since there is no pose");
24 mock_service.mockVRDisplays_[0].setPose(expected_pose);
25 t.step( () => {
26 assert_false(display.getFrameData(fd));
27 }, "Does not update within the same frame");
28 } else {
29 t.step( () => {
30 assert_true(display.getFrameData(fd));
31 assert_not_equals(fd.pose, null);
32 for (let field in expected_pose) {
33 assert_equals(fd.pose[field].length, expected_pose[field].length);
34 for (let i = 0; i < expected_pose[field].length; i++) {
35 assert_approx_equals(fd.pose[field][i], expected_pose[field][i],
36 FLOAT_EPSILON);
37 }
38 }
39 }, "Pose was updated in the next frame");
40 t.done();
41 }
42 counter++;
43 }
44
45 display.requestAnimationFrame(onFrame);
46 }, (err) => {
47 t.step( () => {
48 assert_unreached("getVRDisplays rejected");
49 });
50 });
51 }, [fakeDisplays["Pixel"]],
52 "getFrameData updates on the next frame");
53
54 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698