File tree Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Expand file tree Collapse file tree 2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -282,6 +282,7 @@ class EventTarget {
282282
283283 return `${ name } ${ inspect ( { } , opts ) } ` ;
284284 }
285+ get [ Symbol . toStringTag ] ( ) { return 'EventTarget' ; }
285286}
286287
287288Object . defineProperties ( EventTarget . prototype , {
Original file line number Diff line number Diff line change @@ -75,7 +75,15 @@ ok(EventTarget);
7575 eventTarget . removeEventListener ( 'foo' , ev1 ) ;
7676 eventTarget . dispatchEvent ( new Event ( 'foo' ) ) ;
7777}
78-
78+ {
79+ // event subclassing
80+ const SubEvent = class extends Event { } ;
81+ const ev = new SubEvent ( 'foo' ) ;
82+ const eventTarget = new EventTarget ( ) ;
83+ const fn = common . mustCall ( ( event ) => strictEqual ( event , ev ) ) ;
84+ eventTarget . addEventListener ( 'foo' , fn , { once : true } ) ;
85+ eventTarget . dispatchEvent ( ev ) ;
86+ }
7987{
8088 const eventTarget = new NodeEventTarget ( ) ;
8189 strictEqual ( eventTarget . listenerCount ( 'foo' ) , 0 ) ;
@@ -384,3 +392,10 @@ ok(EventTarget);
384392 target . removeEventListener ( 'foo' , a , { capture : false } ) ;
385393 target . dispatchEvent ( new Event ( 'foo' ) ) ;
386394}
395+
396+ {
397+ const target = new EventTarget ( ) ;
398+ strictEqual ( target . toString ( ) , '[object EventTarget]' ) ;
399+ const event = new Event ( ) ;
400+ strictEqual ( event . toString ( ) , '[object Event]' ) ;
401+ }
You can’t perform that action at this time.
0 commit comments