| <!DOCTYPE html> |
| <!-- |
| Tentative; contingent on merge of: |
| https://github.com/w3c/pointerevents/pull/495 |
| --> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id="console"></div> |
| |
| <!-- This test verifies that pointerEvent.persistentDeviceId |
| can be set via PointerEventInit. --> |
| <script> |
| const PERSISTENT_ID = 1001; |
| const INVALID_PERSISTENT_ID = 0; |
| |
| function CheckDeviceId(event, persistentDeviceId) { |
| assert_equals(event.persistentDeviceId, persistentDeviceId, "persistentDeviceId is populated"); |
| } |
| |
| promise_test(async () => { |
| var deviceId = PERSISTENT_ID; |
| var downEvent = new PointerEvent("pointerdown", |
| {pointerId: 1, |
| bubbles: true, |
| cancelable: true, |
| pointerType: "pen", |
| width: 100, |
| height: 100, |
| isPrimary: true, |
| persistentDeviceId: deviceId |
| }); |
| CheckDeviceId(downEvent, PERSISTENT_ID); |
| var moveEvent = new PointerEvent("pointermove", |
| {pointerId: 1, |
| bubbles: true, |
| cancelable: true, |
| pointerType: "pen", |
| width: 100, |
| height: 100, |
| isPrimary: true, |
| persistentDeviceId: deviceId |
| }); |
| CheckDeviceId(moveEvent, PERSISTENT_ID); |
| var upEvent = new PointerEvent("pointerup", |
| {pointerId: 1, |
| bubbles: true, |
| cancelable: true, |
| pointerType: "pen", |
| width: 100, |
| height: 100, |
| isPrimary: true, |
| persistentDeviceId: deviceId |
| }); |
| CheckDeviceId(upEvent, PERSISTENT_ID); |
| }, 'PointerEvent.persistentDeviceId via PointerEventInit'); |
| |
| promise_test(async () => { |
| var downEventEmptyProps = new PointerEvent("pointerdown", |
| {pointerId: 1, |
| bubbles: true, |
| cancelable: true, |
| pointerType: "pen", |
| width: 100, |
| height: 100, |
| isPrimary: true, |
| }); |
| assert_equals(downEventEmptyProps.persistentDeviceId, INVALID_PERSISTENT_ID); |
| }, 'No persistentDeviceId in PointerEventInit'); |
| </script> |