11import { MockWindow } from '../window' ;
22
3-
43describe ( 'event' , ( ) => {
54 let win : MockWindow ;
65 beforeEach ( ( ) => {
@@ -72,7 +71,7 @@ describe('event', () => {
7271 composed : true ,
7372 detail : 88
7473 } ;
75- const ev = new win . Event ( 'click' , eventInitDict ) as CustomEvent ;
74+ const ev = new win . CustomEvent ( 'click' , eventInitDict ) as CustomEvent ;
7675 expect ( ev . bubbles ) . toBe ( true ) ;
7776 expect ( ev . cancelBubble ) . toBe ( false ) ;
7877 expect ( ev . cancelable ) . toBe ( false ) ;
@@ -86,4 +85,65 @@ describe('event', () => {
8685 expect ( ev . detail ) . toBe ( 88 ) ;
8786 } ) ;
8887
88+ it ( 'KeyboardEvent() requires type' , ( ) => {
89+ expect ( ( ) => {
90+ new win . KeyboardEvent ( ) ;
91+ } ) . toThrow ( ) ;
92+ } ) ;
93+
94+ it ( 'KeyboardEvent(type)' , ( ) => {
95+ const ev = new win . KeyboardEvent ( 'keyup' ) as KeyboardEvent ;
96+ expect ( ev . bubbles ) . toBe ( false ) ;
97+ expect ( ev . cancelBubble ) . toBe ( false ) ;
98+ expect ( ev . cancelable ) . toBe ( false ) ;
99+ expect ( ev . composed ) . toBe ( false ) ;
100+ expect ( ev . currentTarget ) . toBe ( null ) ;
101+ expect ( ev . defaultPrevented ) . toBe ( false ) ;
102+ expect ( ev . srcElement ) . toBe ( null ) ;
103+ expect ( ev . target ) . toBe ( null ) ;
104+ expect ( typeof ev . timeStamp ) . toBe ( 'number' ) ;
105+ expect ( ev . type ) . toBe ( 'keyup' ) ;
106+ expect ( ev . code ) . toBe ( '' ) ;
107+ expect ( ev . key ) . toBe ( '' ) ;
108+ expect ( ev . altKey ) . toBe ( false ) ;
109+ expect ( ev . ctrlKey ) . toBe ( false ) ;
110+ expect ( ev . metaKey ) . toBe ( false ) ;
111+ expect ( ev . shiftKey ) . toBe ( false ) ;
112+ expect ( ev . location ) . toBe ( 0 ) ;
113+ expect ( ev . repeat ) . toBe ( false ) ;
114+ } ) ;
115+
116+ it ( 'KeyboardEvent(type, eventInitDict)' , ( ) => {
117+ const eventInitDict = {
118+ bubbles : true ,
119+ composed : true ,
120+ code : 'KeyA' ,
121+ key : 'A' ,
122+ altKey : false ,
123+ ctrlKey : false ,
124+ metaKey : false ,
125+ shiftKey : true ,
126+ location : 0 ,
127+ repeat : true
128+ } ;
129+ const ev = new win . KeyboardEvent ( 'keyup' , eventInitDict ) as KeyboardEvent ;
130+ expect ( ev . bubbles ) . toBe ( true ) ;
131+ expect ( ev . cancelBubble ) . toBe ( false ) ;
132+ expect ( ev . cancelable ) . toBe ( false ) ;
133+ expect ( ev . composed ) . toBe ( true ) ;
134+ expect ( ev . currentTarget ) . toBe ( null ) ;
135+ expect ( ev . defaultPrevented ) . toBe ( false ) ;
136+ expect ( ev . srcElement ) . toBe ( null ) ;
137+ expect ( ev . target ) . toBe ( null ) ;
138+ expect ( typeof ev . timeStamp ) . toBe ( 'number' ) ;
139+ expect ( ev . type ) . toBe ( 'keyup' ) ;
140+ expect ( ev . code ) . toBe ( 'KeyA' ) ;
141+ expect ( ev . key ) . toBe ( 'A' ) ;
142+ expect ( ev . altKey ) . toBe ( false ) ;
143+ expect ( ev . ctrlKey ) . toBe ( false ) ;
144+ expect ( ev . metaKey ) . toBe ( false ) ;
145+ expect ( ev . shiftKey ) . toBe ( true ) ;
146+ expect ( ev . location ) . toBe ( 0 ) ;
147+ expect ( ev . repeat ) . toBe ( true ) ;
148+ } ) ;
89149} ) ;
0 commit comments