From 416db75e42e347f0159f1fbc65ed75de998b27da Mon Sep 17 00:00:00 2001 From: Efe Date: Mon, 22 Dec 2025 17:14:56 +0100 Subject: [PATCH] events: remove eventtarget custom inspect branding PR-URL: https://github.com/nodejs/node/pull/61128 Reviewed-By: Aviv Keller Reviewed-By: Ruben Bridgewater --- lib/internal/event_target.js | 2 -- ...enttarget-custom-inspect-does-not-throw.js | 19 +++++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 test/parallel/test-eventtarget-custom-inspect-does-not-throw.js diff --git a/lib/internal/event_target.js b/lib/internal/event_target.js index c267050bf6..9029f19b30 100644 --- a/lib/internal/event_target.js +++ b/lib/internal/event_target.js @@ -867,8 +867,6 @@ class EventTarget { return new CustomEvent(type, { detail: nodeValue }); } [customInspectSymbol](depth, options) { - if (!isEventTarget(this)) - throw new ERR_INVALID_THIS('EventTarget'); const name = this.constructor.name; if (depth < 0) return name; diff --git a/test/parallel/test-eventtarget-custom-inspect-does-not-throw.js b/test/parallel/test-eventtarget-custom-inspect-does-not-throw.js new file mode 100644 index 0000000000..114f7e8562 --- /dev/null +++ b/test/parallel/test-eventtarget-custom-inspect-does-not-throw.js @@ -0,0 +1,19 @@ +'use strict'; + +require('../common'); +const assert = require('assert'); +const util = require('util'); + +const symbol = util.inspect.custom; + +const eventTargetInspect = EventTarget.prototype[symbol]; + +const fakeEventTarget = { + [symbol]: eventTargetInspect, + someOtherField: 42 +}; + +// Should not throw when calling the custom inspect method +const output = util.inspect(fakeEventTarget); + +assert.strictEqual(typeof output, 'string');