File tree 2 files changed +17
-1
lines changed
2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -282,6 +282,7 @@ class EventTarget {
282
282
283
283
return `${ name } ${ inspect ( { } , opts ) } ` ;
284
284
}
285
+ get [ Symbol . toStringTag ] ( ) { return 'EventTarget' ; }
285
286
}
286
287
287
288
Object . defineProperties ( EventTarget . prototype , {
Original file line number Diff line number Diff line change @@ -75,7 +75,15 @@ ok(EventTarget);
75
75
eventTarget . removeEventListener ( 'foo' , ev1 ) ;
76
76
eventTarget . dispatchEvent ( new Event ( 'foo' ) ) ;
77
77
}
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
+ }
79
87
{
80
88
const eventTarget = new NodeEventTarget ( ) ;
81
89
strictEqual ( eventTarget . listenerCount ( 'foo' ) , 0 ) ;
@@ -384,3 +392,10 @@ ok(EventTarget);
384
392
target . removeEventListener ( 'foo' , a , { capture : false } ) ;
385
393
target . dispatchEvent ( new Event ( 'foo' ) ) ;
386
394
}
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