Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

<!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>
let testName = "XRRigidTransform position and orientation meet [SameObject] requirements";
// xrRigidTransform_inverse.https.html already checks [SameObject] requirement
// for XRRigidTransform.inverse. It's in a separate test because there are
// additional constraints around how the inverse attribute should work besides
// just [SameObject].
let testFunction =
(session, fakeDeviceController, t) => new Promise((resolve, reject) => {
let transform = new XRRigidTransform(
{ x: -9.0, y: 8.0, z: -7.0 },
{ x: 6.0, y: -5.0, z: 4.0, w: 3.0 });
let position = transform.position;
let orientation = transform.orientation;
let matrix = transform.matrix;
t.step(() => {
assert_equals(position, transform.position,
"XRRigidTransform.position returns the same object.");
assert_equals(orientation, transform.orientation,
"XRRigidTransform.orientation returns the same object.");
assert_equals(matrix, transform.matrix,
"XRRigidTransform.matrix returns the same object.");
xr_session_promise_test(testName, testFunction, TRACKED_IMMERSIVE_DEVICE,