Commit 91d93045 authored by David Awogbemila's avatar David Awogbemila Committed by aborovova@mozilla.com
Browse files

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: default avatarKevin 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
parent 095bd519
Loading
Loading
Loading
Loading
+42 −0
Original line number Diff line number Diff line
<!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>