Files
sousa-gecko/testing/web-platform/tests/css/css-scroll-snap/snapevent-constructor.html
T
David Awogbemila 41299821c6 Bug 1966981 [wpt PR 52603] - Expose SnapEvent constructor,
Automatic update from web-platform-tests
Expose SnapEvent constructor

The constructor for the SnapEvent interface was omitted in the
interface definition in snap_event.idl. This patch corrects this
omission.

The change is put behind a flag as we might need to send out a Blink
PSA.

Bug: 415848477
Change-Id: I2444de59ab4fa69f63d65ea885148135c3ee028b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6545816
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Commit-Queue: David Awogbemila <awogbemila@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1461431}

--

wpt-commits: 8f488e2c5e3cc04b814c58a35aaee5a7ad6d11ac
wpt-pr: 52603

Differential Revision: https://phabricator.services.mozilla.com/D250672
2025-05-22 10:41:36 +00:00

43 lines
1.4 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel=help href="https://drafts.csswg.org/css-scroll-snap-2/#snapevent-interface">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<script>
test(function() {
assert_throws_js(TypeError, function() {
new SnapEvent();
}, 'First argument (type) is required, so was expecting a TypeError.');
}, 'Missing type argument');
test(function() {
let event = new SnapEvent("");
assert_true(event instanceof window.SnapEvent);
}, "the event is an instance of SnapEvent");
test(function() {
let event = new SnapEvent("customsnapevent");
assert_equals(event.type, "customsnapevent",
"event constructor type is honored");
assert_equals(event.snapTargetBlock, null, "null snapTrgetBlock");
assert_equals(event.snapTargetInline, null, "null snapTargetInline");
}, "default init dict");
test(function() {
const div_element = document.createElement("div");
let event = new SnapEvent("scrollsnapchange", {
snapTargetBlock: document,
snapTargetInline: div_element
});
assert_equals(event.type, "scrollsnapchange");
assert_equals(event.snapTargetBlock, document);
assert_equals(event.snapTargetInline, div_element);
}, "event constructor type is honored");
</script>
</body>
</html>