forked from mirrors/gecko-dev
Automatic update from web-platform-tests bindings: Add a WPT to prevent a leak of ObservableArray's internals Adds a WPT in order to check whether a leak of internal implementation objects of observable arrays happens or not. Bug: 1352549 Change-Id: I08b56208f4ace336bc56b33145a2762325584ad9 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4060690 Reviewed-by: Kentaro Hara <haraken@chromium.org> Commit-Queue: Yuki Shiino <yukishiino@chromium.org> Cr-Commit-Position: refs/heads/main@{#1076696} -- wpt-commits: 183b5afa8a6daf75b5752d0a9d2994cdb76d29e4 wpt-pr: 37218
18 lines
579 B
JavaScript
18 lines
579 B
JavaScript
"use strict";
|
|
|
|
test(() => {
|
|
const observableArray = document.adoptedStyleSheets;
|
|
|
|
let leaked_target = null;
|
|
let leaked_handler = null;
|
|
|
|
let target_leaker = (target) => { leaked_target = target; return null; };
|
|
Object.defineProperty(Object.prototype, "getPrototypeOf", {get: function() {
|
|
leaked_handler = this;
|
|
return target_leaker;
|
|
}})
|
|
Object.getPrototypeOf(observableArray);
|
|
|
|
assert_equals(leaked_target, null, "The proxy target leaked.");
|
|
assert_equals(leaked_handler, null, "The proxy handler leaked.");
|
|
}, "ObservableArray's internals won't leak");
|