Add onsecuritypolicyviolation event handler IDL attribute

`onsecuritypolicyviolation` IDL attribute is supported by
GlobalEventHandlers[0]

This new spec addition is already implemented in
Safari recently and Firefox[2] recently

Intent to Ship mail with 3 approvals: [3]

[0] https://github.com/whatwg/html/pull/2651
[1] https://bugs.webkit.org/show_bug.cgi?id=229381
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1727302
[3] https://groups.google.com/a/chromium.org/g/blink-dev/c/dscqiFc-iJA/m/I0AzjsRuBQAJ

R=fwang@igalia.com, masonf@chromium.org, rego@igalia.com

Bug: 1242893
Change-Id: I4c2127092813ecabdd8f5eb023def5c3fed7d99e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3226366
Reviewed-by: Manuel Rego <rego@igalia.com>
Commit-Queue: sss <ssingla@igalia.com>
Cr-Commit-Position: refs/heads/main@{#934184}
diff --git a/third_party/blink/renderer/core/dom/document.idl b/third_party/blink/renderer/core/dom/document.idl
index 818bf05..9557ae0 100644
--- a/third_party/blink/renderer/core/dom/document.idl
+++ b/third_party/blink/renderer/core/dom/document.idl
@@ -216,7 +216,6 @@
     [RuntimeEnabled=Prerender2] attribute EventHandler onprerenderingchange;
     attribute EventHandler onresume;
     attribute EventHandler onsearch;
-    attribute EventHandler onsecuritypolicyviolation;
     attribute EventHandler onvisibilitychange;
 };
 
diff --git a/third_party/blink/renderer/core/dom/global_event_handlers.h b/third_party/blink/renderer/core/dom/global_event_handlers.h
index 68c979f..fd41814 100644
--- a/third_party/blink/renderer/core/dom/global_event_handlers.h
+++ b/third_party/blink/renderer/core/dom/global_event_handlers.h
@@ -107,6 +107,8 @@
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(resize, kResize)
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(scroll, kScroll)
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(scrollend, kScrollend)
+  DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(securitypolicyviolation,
+                                         kSecuritypolicyviolation)
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(seeked, kSeeked)
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(seeking, kSeeking)
   DEFINE_STATIC_ATTRIBUTE_EVENT_LISTENER(select, kSelect)
diff --git a/third_party/blink/renderer/core/dom/global_event_handlers.idl b/third_party/blink/renderer/core/dom/global_event_handlers.idl
index cfc4a1a..9f59cd03 100644
--- a/third_party/blink/renderer/core/dom/global_event_handlers.idl
+++ b/third_party/blink/renderer/core/dom/global_event_handlers.idl
@@ -84,6 +84,7 @@
     attribute EventHandler onresize;
     attribute EventHandler onscroll;
     [RuntimeEnabled=OverscrollCustomization] attribute EventHandler onscrollend;
+    attribute EventHandler onsecuritypolicyviolation;
     attribute EventHandler onseeked;
     attribute EventHandler onseeking;
     attribute EventHandler onselect;
diff --git a/third_party/blink/renderer/core/html/html_attribute_names.json5 b/third_party/blink/renderer/core/html/html_attribute_names.json5
index 9b6c5bf..e2fe7e2 100644
--- a/third_party/blink/renderer/core/html/html_attribute_names.json5
+++ b/third_party/blink/renderer/core/html/html_attribute_names.json5
@@ -243,6 +243,7 @@
     "onscroll",
     "onscrollend",
     "onsearch",
+    "onsecuritypolicyviolation",
     "onseeked",
     "onseeking",
     "onselect",
diff --git a/third_party/blink/renderer/core/html/html_element.cc b/third_party/blink/renderer/core/html/html_element.cc
index 031570e..582e515b 100644
--- a/third_party/blink/renderer/core/html/html_element.cc
+++ b/third_party/blink/renderer/core/html/html_element.cc
@@ -568,6 +568,8 @@
        nullptr},
       {html_names::kOnseekingAttr, kNoWebFeature, event_type_names::kSeeking,
        nullptr},
+      {html_names::kOnsecuritypolicyviolationAttr, kNoWebFeature,
+       event_type_names::kSecuritypolicyviolation, nullptr},
       {html_names::kOnselectAttr, kNoWebFeature, event_type_names::kSelect,
        nullptr},
       {html_names::kOnselectstartAttr, kNoWebFeature,
diff --git "a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_exclude=\050Document_Window_HTML._\051-expected.txt" "b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_exclude=\050Document_Window_HTML._\051-expected.txt"
index 9b88353..28ef8e2 100644
--- "a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_exclude=\050Document_Window_HTML._\051-expected.txt"
+++ "b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_exclude=\050Document_Window_HTML._\051-expected.txt"
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 1459 tests; 1419 PASS, 40 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 1459 tests; 1420 PASS, 39 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS idl_test setup
 PASS idl_test validation
 PASS Partial interface Document: original interface defined
@@ -1416,7 +1416,7 @@
 PASS SVGElement interface: attribute onreset
 PASS SVGElement interface: attribute onresize
 PASS SVGElement interface: attribute onscroll
-FAIL SVGElement interface: attribute onsecuritypolicyviolation assert_true: The prototype object must have a property "onsecuritypolicyviolation" expected true got false
+PASS SVGElement interface: attribute onsecuritypolicyviolation
 PASS SVGElement interface: attribute onseeked
 PASS SVGElement interface: attribute onseeking
 PASS SVGElement interface: attribute onselect
diff --git "a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=\050Document_Window\051-expected.txt" "b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=\050Document_Window\051-expected.txt"
index 7dde5d0..74c9fb4 100644
--- "a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=\050Document_Window\051-expected.txt"
+++ "b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=\050Document_Window\051-expected.txt"
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 984 tests; 966 PASS, 18 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 984 tests; 968 PASS, 16 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS idl_test setup
 PASS idl_test validation
 PASS Partial interface Document: original interface defined
@@ -269,7 +269,7 @@
 PASS Window interface: attribute onreset
 PASS Window interface: attribute onresize
 PASS Window interface: attribute onscroll
-FAIL Window interface: attribute onsecuritypolicyviolation assert_own_property: The global object must have a property "onsecuritypolicyviolation" expected property "onsecuritypolicyviolation" missing
+PASS Window interface: attribute onsecuritypolicyviolation
 PASS Window interface: attribute onseeked
 PASS Window interface: attribute onseeking
 PASS Window interface: attribute onselect
@@ -424,7 +424,7 @@
 PASS Window interface: window must inherit property "onreset" with the proper type
 PASS Window interface: window must inherit property "onresize" with the proper type
 PASS Window interface: window must inherit property "onscroll" with the proper type
-FAIL Window interface: window must inherit property "onsecuritypolicyviolation" with the proper type assert_own_property: expected property "onsecuritypolicyviolation" missing
+PASS Window interface: window must inherit property "onsecuritypolicyviolation" with the proper type
 PASS Window interface: window must inherit property "onseeked" with the proper type
 PASS Window interface: window must inherit property "onseeking" with the proper type
 PASS Window interface: window must inherit property "onselect" with the proper type
diff --git a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=HTML._-expected.txt b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=HTML._-expected.txt
index 1649684..bc20b8a 100644
--- a/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=HTML._-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/html/dom/idlharness.https_include=HTML._-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 3772 tests; 3748 PASS, 24 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 3772 tests; 3750 PASS, 22 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS idl_test setup
 PASS idl_test validation
 PASS Partial interface Document: original interface defined
@@ -287,7 +287,7 @@
 PASS HTMLElement interface: attribute onreset
 PASS HTMLElement interface: attribute onresize
 PASS HTMLElement interface: attribute onscroll
-FAIL HTMLElement interface: attribute onsecuritypolicyviolation assert_true: The prototype object must have a property "onsecuritypolicyviolation" expected true got false
+PASS HTMLElement interface: attribute onsecuritypolicyviolation
 PASS HTMLElement interface: attribute onseeked
 PASS HTMLElement interface: attribute onseeking
 PASS HTMLElement interface: attribute onselect
@@ -384,7 +384,7 @@
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onreset" with the proper type
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onresize" with the proper type
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onscroll" with the proper type
-FAIL HTMLElement interface: document.createElement("noscript") must inherit property "onsecuritypolicyviolation" with the proper type assert_inherits: property "onsecuritypolicyviolation" not found in prototype chain
+PASS HTMLElement interface: document.createElement("noscript") must inherit property "onsecuritypolicyviolation" with the proper type
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onseeked" with the proper type
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onseeking" with the proper type
 PASS HTMLElement interface: document.createElement("noscript") must inherit property "onselect" with the proper type
diff --git a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-all-global-events-expected.txt b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-all-global-events-expected.txt
index aab4c4e..94211845 100644
--- a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-all-global-events-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-all-global-events-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 335 tests; 323 PASS, 12 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 335 tests; 327 PASS, 8 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS onabort: must be on the appropriate locations for GlobalEventHandlers
 PASS onabort: the default value must be null
 PASS onabort: the content attribute must be compiled into a function as the corresponding property
@@ -250,10 +250,10 @@
 PASS onscroll: the content attribute must be compiled into a function as the corresponding property
 PASS onscroll: the content attribute must execute when an event is dispatched
 PASS onscroll: dispatching an Event at a <meta> element must trigger element.onscroll
-FAIL onsecuritypolicyviolation: must be on the appropriate locations for GlobalEventHandlers assert_true: Window has an own property named "onsecuritypolicyviolation" expected true got false
-FAIL onsecuritypolicyviolation: the default value must be null assert_equals: The default value of the property is null for a Window instance expected (object) null but got (undefined) undefined
-FAIL onsecuritypolicyviolation: the content attribute must be compiled into a function as the corresponding property assert_equals: The onsecuritypolicyviolation property must be a function expected "function" but got "undefined"
-FAIL onsecuritypolicyviolation: the content attribute must execute when an event is dispatched assert_true: Dispatching an event must run the code expected true got undefined
+PASS onsecuritypolicyviolation: must be on the appropriate locations for GlobalEventHandlers
+PASS onsecuritypolicyviolation: the default value must be null
+PASS onsecuritypolicyviolation: the content attribute must be compiled into a function as the corresponding property
+PASS onsecuritypolicyviolation: the content attribute must execute when an event is dispatched
 PASS onsecuritypolicyviolation: dispatching an Event at a <meta> element must trigger element.onsecuritypolicyviolation
 PASS onseeked: must be on the appropriate locations for GlobalEventHandlers
 PASS onseeked: the default value must be null
diff --git a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-body-window-expected.txt b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-body-window-expected.txt
index 31f63be..b272ecb94 100644
--- a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-body-window-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-body-window-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 327 tests; 312 PASS, 15 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 327 tests; 315 PASS, 12 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS shadowed blur (document.body)
 PASS shadowed error (document.body)
 PASS shadowed focus (document.body)
@@ -67,7 +67,7 @@
 PASS not shadowed progress (document.body)
 PASS not shadowed ratechange (document.body)
 PASS not shadowed reset (document.body)
-FAIL not shadowed securitypolicyviolation (document.body) assert_equals: alternative body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (document.body)
 PASS not shadowed seeked (document.body)
 PASS not shadowed seeking (document.body)
 PASS not shadowed select (document.body)
@@ -176,7 +176,7 @@
 PASS not shadowed progress (document.createElement("body"))
 PASS not shadowed ratechange (document.createElement("body"))
 PASS not shadowed reset (document.createElement("body"))
-FAIL not shadowed securitypolicyviolation (document.createElement("body")) assert_equals: body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (document.createElement("body"))
 PASS not shadowed seeked (document.createElement("body"))
 PASS not shadowed seeking (document.createElement("body"))
 PASS not shadowed select (document.createElement("body"))
@@ -285,7 +285,7 @@
 PASS not shadowed progress (window)
 PASS not shadowed ratechange (window)
 PASS not shadowed reset (window)
-FAIL not shadowed securitypolicyviolation (window) assert_equals: body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (window)
 PASS not shadowed seeked (window)
 PASS not shadowed seeking (window)
 PASS not shadowed select (window)
diff --git a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-frameset-window-expected.txt b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-frameset-window-expected.txt
index 8ba65e03..6da4300 100644
--- a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-frameset-window-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-frameset-window-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 327 tests; 312 PASS, 15 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 327 tests; 315 PASS, 12 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS shadowed blur (document.body)
 PASS shadowed error (document.body)
 PASS shadowed focus (document.body)
@@ -67,7 +67,7 @@
 PASS not shadowed progress (document.body)
 PASS not shadowed ratechange (document.body)
 PASS not shadowed reset (document.body)
-FAIL not shadowed securitypolicyviolation (document.body) assert_equals: alternative body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (document.body)
 PASS not shadowed seeked (document.body)
 PASS not shadowed seeking (document.body)
 PASS not shadowed select (document.body)
@@ -176,7 +176,7 @@
 PASS not shadowed progress (document.createElement("frameset"))
 PASS not shadowed ratechange (document.createElement("frameset"))
 PASS not shadowed reset (document.createElement("frameset"))
-FAIL not shadowed securitypolicyviolation (document.createElement("frameset")) assert_equals: body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (document.createElement("frameset"))
 PASS not shadowed seeked (document.createElement("frameset"))
 PASS not shadowed seeking (document.createElement("frameset"))
 PASS not shadowed select (document.createElement("frameset"))
@@ -285,7 +285,7 @@
 PASS not shadowed progress (window)
 PASS not shadowed ratechange (window)
 PASS not shadowed reset (window)
-FAIL not shadowed securitypolicyviolation (window) assert_equals: body should reflect expected (object) null but got (undefined) undefined
+PASS not shadowed securitypolicyviolation (window)
 PASS not shadowed seeked (window)
 PASS not shadowed seeking (window)
 PASS not shadowed select (window)
diff --git a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-windowless-body-expected.txt b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-windowless-body-expected.txt
index 73086af..97c57550 100644
--- a/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-windowless-body-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/html/webappapis/scripting/events/event-handler-attributes-windowless-body-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 218 tests; 212 PASS, 6 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 218 tests; 214 PASS, 4 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS Return null when getting the blur event handler of a windowless body
 PASS Ignore setting of blur window event handlers on windowless body
 PASS Return null when getting the error event handler of a windowless body
@@ -89,7 +89,7 @@
 PASS progress is unaffected on a windowless body
 PASS ratechange is unaffected on a windowless body
 PASS reset is unaffected on a windowless body
-FAIL securitypolicyviolation is unaffected on a windowless body assert_equals: expected (object) null but got (undefined) undefined
+PASS securitypolicyviolation is unaffected on a windowless body
 PASS seeked is unaffected on a windowless body
 PASS seeking is unaffected on a windowless body
 PASS select is unaffected on a windowless body
@@ -198,7 +198,7 @@
 PASS progress is unaffected on a windowless frameset
 PASS ratechange is unaffected on a windowless frameset
 PASS reset is unaffected on a windowless frameset
-FAIL securitypolicyviolation is unaffected on a windowless frameset assert_equals: expected (object) null but got (undefined) undefined
+PASS securitypolicyviolation is unaffected on a windowless frameset
 PASS seeked is unaffected on a windowless frameset
 PASS seeking is unaffected on a windowless frameset
 PASS select is unaffected on a windowless frameset
diff --git a/third_party/blink/web_tests/external/wpt/mathml/relations/html5-tree/math-global-event-handlers.tentative-expected.txt b/third_party/blink/web_tests/external/wpt/mathml/relations/html5-tree/math-global-event-handlers.tentative-expected.txt
index f8bb8df..eb364612 100644
--- a/third_party/blink/web_tests/external/wpt/mathml/relations/html5-tree/math-global-event-handlers.tentative-expected.txt
+++ b/third_party/blink/web_tests/external/wpt/mathml/relations/html5-tree/math-global-event-handlers.tentative-expected.txt
@@ -1,5 +1,5 @@
 This is a testharness.js-based test.
-Found 335 tests; 320 PASS, 15 FAIL, 0 TIMEOUT, 0 NOTRUN.
+Found 335 tests; 325 PASS, 10 FAIL, 0 TIMEOUT, 0 NOTRUN.
 PASS onabort: must be on the appropriate locations for GlobalEventHandlers
 PASS onabort: the default value must be null
 PASS onabort: the content attribute must be compiled into a function as the corresponding property
@@ -250,11 +250,11 @@
 PASS onscroll: the content attribute must be compiled into a function as the corresponding property
 PASS onscroll: dynamic changes on the attribute
 PASS onscroll: dispatching an Event at a <math> element must trigger element.onscroll
-FAIL onsecuritypolicyviolation: must be on the appropriate locations for GlobalEventHandlers assert_true: MathMLElement has an own property named "onsecuritypolicyviolation" expected true got false
-FAIL onsecuritypolicyviolation: the default value must be null assert_equals: The default value of the property is null for a MathMLElement instance expected (object) null but got (undefined) undefined
-FAIL onsecuritypolicyviolation: the content attribute must be compiled into a function as the corresponding property assert_equals: The onsecuritypolicyviolation property must be a function expected "function" but got "undefined"
-FAIL onsecuritypolicyviolation: dynamic changes on the attribute assert_equals: The onsecuritypolicyviolation property must be null (no attribute) expected (object) null but got (undefined) undefined
-FAIL onsecuritypolicyviolation: dispatching an Event at a <math> element must trigger element.onsecuritypolicyviolation assert_equals: The event must be fired at the <math> element expected (object) Element node <math></math> but got (undefined) undefined
+PASS onsecuritypolicyviolation: must be on the appropriate locations for GlobalEventHandlers
+PASS onsecuritypolicyviolation: the default value must be null
+PASS onsecuritypolicyviolation: the content attribute must be compiled into a function as the corresponding property
+PASS onsecuritypolicyviolation: dynamic changes on the attribute
+PASS onsecuritypolicyviolation: dispatching an Event at a <math> element must trigger element.onsecuritypolicyviolation
 PASS onseeked: must be on the appropriate locations for GlobalEventHandlers
 PASS onseeked: the default value must be null
 PASS onseeked: the content attribute must be compiled into a function as the corresponding property
diff --git a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
index c8fe0247..8ad3771 100644
--- a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
+++ b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
@@ -180,6 +180,7 @@
 PASS oldChildWindow.onscroll is newChildWindow.onscroll
 PASS oldChildWindow.onscrollend is newChildWindow.onscrollend
 PASS oldChildWindow.onsearch is newChildWindow.onsearch
+PASS oldChildWindow.onsecuritypolicyviolation is newChildWindow.onsecuritypolicyviolation
 PASS oldChildWindow.onseeked is newChildWindow.onseeked
 PASS oldChildWindow.onseeking is newChildWindow.onseeking
 PASS oldChildWindow.onselect is newChildWindow.onselect
diff --git a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
index cfa564f..301dfda 100644
--- a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
+++ b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
@@ -129,6 +129,7 @@
 PASS childWindow.onscroll is null
 PASS childWindow.onscrollend is null
 PASS childWindow.onsearch is null
+PASS childWindow.onsecuritypolicyviolation is null
 PASS childWindow.onseeked is null
 PASS childWindow.onseeking is null
 PASS childWindow.onselect is null
diff --git a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
index b824f644..90b500a0 100644
--- a/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
+++ b/third_party/blink/web_tests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
@@ -129,6 +129,7 @@
 PASS childWindow.onscroll is null
 PASS childWindow.onscrollend is null
 PASS childWindow.onsearch is null
+PASS childWindow.onsecuritypolicyviolation is null
 PASS childWindow.onseeked is null
 PASS childWindow.onseeking is null
 PASS childWindow.onselect is null
diff --git a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
index 7ae2f51..e38dfcb 100644
--- a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
@@ -163,6 +163,7 @@
 PASS oldChildWindow.onresize is newChildWindow.onresize
 PASS oldChildWindow.onscroll is newChildWindow.onscroll
 PASS oldChildWindow.onsearch is newChildWindow.onsearch
+PASS oldChildWindow.onsecuritypolicyviolation is newChildWindow.onsecuritypolicyviolation
 PASS oldChildWindow.onseeked is newChildWindow.onseeked
 PASS oldChildWindow.onseeking is newChildWindow.onseeking
 PASS oldChildWindow.onselect is newChildWindow.onselect
diff --git a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
index 979cc6f..e414df9 100644
--- a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
@@ -119,6 +119,7 @@
 PASS childWindow.onresize is null
 PASS childWindow.onscroll is null
 PASS childWindow.onsearch is null
+PASS childWindow.onsecuritypolicyviolation is null
 PASS childWindow.onseeked is null
 PASS childWindow.onseeking is null
 PASS childWindow.onselect is null
diff --git a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
index feab25f..42cabb2 100644
--- a/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
@@ -119,6 +119,7 @@
 PASS childWindow.onresize is null
 PASS childWindow.onscroll is null
 PASS childWindow.onsearch is null
+PASS childWindow.onsecuritypolicyviolation is null
 PASS childWindow.onseeked is null
 PASS childWindow.onseeking is null
 PASS childWindow.onselect is null
diff --git a/third_party/blink/web_tests/virtual/stable/webexposed/element-instance-property-listing-expected.txt b/third_party/blink/web_tests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
index c4dde1d..bcfc977 100644
--- a/third_party/blink/web_tests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/webexposed/element-instance-property-listing-expected.txt
@@ -228,6 +228,7 @@
     property onresize
     property onscroll
     property onsearch
+    property onsecuritypolicyviolation
     property onseeked
     property onseeking
     property onselect
@@ -1380,6 +1381,7 @@
     property onresize
     property onscroll
     property onsearch
+    property onsecuritypolicyviolation
     property onseeked
     property onseeking
     property onselect
diff --git a/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt b/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
index dcae8feb..d9248c0 100644
--- a/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
+++ b/third_party/blink/web_tests/virtual/stable/webexposed/global-interface-listing-expected.txt
@@ -2695,6 +2695,7 @@
     getter onreset
     getter onresize
     getter onscroll
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -2813,6 +2814,7 @@
     setter onreset
     setter onresize
     setter onscroll
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
@@ -6209,6 +6211,7 @@
     getter onreset
     getter onresize
     getter onscroll
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -6312,6 +6315,7 @@
     setter onreset
     setter onresize
     setter onscroll
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
@@ -10138,6 +10142,7 @@
     getter onresize
     getter onscroll
     getter onsearch
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -10344,6 +10349,7 @@
     setter onresize
     setter onscroll
     setter onsearch
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
diff --git a/third_party/blink/web_tests/webexposed/element-instance-property-listing-expected.txt b/third_party/blink/web_tests/webexposed/element-instance-property-listing-expected.txt
index 48513d3..557c7490 100644
--- a/third_party/blink/web_tests/webexposed/element-instance-property-listing-expected.txt
+++ b/third_party/blink/web_tests/webexposed/element-instance-property-listing-expected.txt
@@ -245,6 +245,7 @@
     property onscroll
     property onscrollend
     property onsearch
+    property onsecuritypolicyviolation
     property onseeked
     property onseeking
     property onselect
@@ -1452,6 +1453,7 @@
     property onscroll
     property onscrollend
     property onsearch
+    property onsecuritypolicyviolation
     property onseeked
     property onseeking
     property onselect
diff --git a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
index cec7cf6..437d869 100644
--- a/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
+++ b/third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
@@ -3249,6 +3249,7 @@
     getter onresize
     getter onscroll
     getter onscrollend
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -3370,6 +3371,7 @@
     setter onresize
     setter onscroll
     setter onscrollend
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
@@ -5124,6 +5126,7 @@
     getter onresize
     getter onscroll
     getter onscrollend
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -5227,6 +5230,7 @@
     setter onresize
     setter onscroll
     setter onscrollend
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
@@ -7251,6 +7255,7 @@
     getter onresize
     getter onscroll
     getter onscrollend
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -7356,6 +7361,7 @@
     setter onresize
     setter onscroll
     setter onscrollend
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect
@@ -11456,6 +11462,7 @@
     getter onscroll
     getter onscrollend
     getter onsearch
+    getter onsecuritypolicyviolation
     getter onseeked
     getter onseeking
     getter onselect
@@ -11672,6 +11679,7 @@
     setter onscroll
     setter onscrollend
     setter onsearch
+    setter onsecuritypolicyviolation
     setter onseeked
     setter onseeking
     setter onselect