mirror of
https://github.com/servo/servo.git
synced 2025-08-13 01:15:34 +01:00
Update web-platform-tests to revision 3564c21f260aeb6862ceaa56bee9c39b74db3440
This commit is contained in:
parent
78438113d4
commit
555167ffdb
141 changed files with 3095 additions and 1280 deletions
|
@ -0,0 +1,63 @@
|
|||
<!DOCTYPE html>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="resources/webxr_util.js"></script>
|
||||
<script src="resources/webxr_test_constants.js"></script>
|
||||
<script src="resources/webxr_test_asserts.js"></script>
|
||||
<canvas id="webgl-canvas"></canvas>
|
||||
|
||||
<script>
|
||||
|
||||
let testName = "Poses from XRInputSource.gripSpace have emulatedPosition set "
|
||||
+ "properly";
|
||||
|
||||
let fakeDeviceInitParams = TRACKED_IMMERSIVE_DEVICE;
|
||||
|
||||
let testFunction =
|
||||
(session, fakeDeviceController, t) => new Promise((resolve) => {
|
||||
let input_source = fakeDeviceController.simulateInputSourceConnection({
|
||||
handedness: "right",
|
||||
targetRayMode: "tracked-pointer",
|
||||
pointerOrigin: IDENTITY_TRANSFORM,
|
||||
gripOrigin: VALID_GRIP_TRANSFORM,
|
||||
profiles: []
|
||||
});
|
||||
|
||||
// Must have a reference space to get input poses. eye-level doesn't apply
|
||||
// any transforms to the given matrix.
|
||||
session.requestReferenceSpace('local').then( (referenceSpace) => {
|
||||
|
||||
function CheckPositionNotEmulated(time, xrFrame) {
|
||||
let source = session.inputSources[0];
|
||||
let grip_pose = xrFrame.getPose(source.gripSpace, referenceSpace);
|
||||
|
||||
t.step(() => {
|
||||
assert_not_equals(grip_pose, null);
|
||||
assert_equals(grip_pose.emulatedPosition, false);
|
||||
});
|
||||
|
||||
input_source.setGripOrigin(VALID_GRIP_TRANSFORM, true);
|
||||
session.requestAnimationFrame(CheckPositionEmulated);
|
||||
}
|
||||
|
||||
function CheckPositionEmulated(time, xrFrame) {
|
||||
let source = session.inputSources[0];
|
||||
let grip_pose = xrFrame.getPose(source.gripSpace, referenceSpace);
|
||||
|
||||
t.step(() => {
|
||||
assert_not_equals(grip_pose, null);
|
||||
assert_equals(grip_pose.emulatedPosition, true);
|
||||
});
|
||||
|
||||
resolve();
|
||||
}
|
||||
|
||||
// Can only request input poses in an xr frame.
|
||||
session.requestAnimationFrame(CheckPositionNotEmulated);
|
||||
});
|
||||
});
|
||||
|
||||
xr_session_promise_test(
|
||||
testName, testFunction, fakeDeviceInitParams, 'immersive-vr');
|
||||
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue