@@ -33,6 +33,16 @@ describe('useMove', function () {
33
33
jest . runAllTimers ( ) ;
34
34
} ) ;
35
35
36
+ afterEach ( ( ) => {
37
+ // for restoreTextSelection
38
+ jest . runAllTimers ( ) ;
39
+ } ) ;
40
+ let altKey = false ;
41
+ let ctrlKey = false ;
42
+ let metaKey = false ;
43
+ let shiftKey = false ;
44
+ let defaultModifiers = { altKey, ctrlKey, metaKey, shiftKey} ;
45
+
36
46
describe ( 'mouse events' , function ( ) {
37
47
installMouseEvent ( ) ;
38
48
@@ -51,9 +61,9 @@ describe('useMove', function () {
51
61
fireEvent . mouseDown ( el , { button : 0 , pageX : 1 , pageY : 30 } ) ;
52
62
expect ( events ) . toStrictEqual ( [ ] ) ;
53
63
fireEvent . mouseMove ( el , { button : 0 , pageX : 10 , pageY : 25 } ) ;
54
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'mouse' } , { type : 'move' , pointerType : 'mouse' , deltaX : 9 , deltaY : - 5 } ] ) ;
64
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'mouse' , ... defaultModifiers } , { type : 'move' , pointerType : 'mouse' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
55
65
fireEvent . mouseUp ( el ) ;
56
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'mouse' } , { type : 'move' , pointerType : 'mouse' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'mouse' } ] ) ;
66
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'mouse' , ... defaultModifiers } , { type : 'move' , pointerType : 'mouse' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'mouse' , ... defaultModifiers } ] ) ;
57
67
} ) ;
58
68
59
69
it ( 'doesn\'t respond to right click' , function ( ) {
@@ -110,9 +120,9 @@ describe('useMove', function () {
110
120
fireEvent . touchStart ( el , { changedTouches : [ { identifier : 1 , pageX : 1 , pageY : 30 } ] } ) ;
111
121
expect ( events ) . toStrictEqual ( [ ] ) ;
112
122
fireEvent . touchMove ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
113
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } ] ) ;
123
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
114
124
fireEvent . touchEnd ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
115
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'touch' } ] ) ;
125
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'touch' , ... defaultModifiers } ] ) ;
116
126
} ) ;
117
127
118
128
it ( 'ends with touchcancel' , function ( ) {
@@ -130,9 +140,9 @@ describe('useMove', function () {
130
140
fireEvent . touchStart ( el , { changedTouches : [ { identifier : 1 , pageX : 1 , pageY : 30 } ] } ) ;
131
141
expect ( events ) . toStrictEqual ( [ ] ) ;
132
142
fireEvent . touchMove ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
133
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } ] ) ;
143
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
134
144
fireEvent . touchCancel ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
135
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'touch' } ] ) ;
145
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'touch' , ... defaultModifiers } ] ) ;
136
146
} ) ;
137
147
138
148
it ( 'doesn\'t fire anything when tapping' , function ( ) {
@@ -170,9 +180,9 @@ describe('useMove', function () {
170
180
fireEvent . touchEnd ( el , { changedTouches : [ { identifier : 2 , pageX : 10 , pageY : 40 } ] } ) ;
171
181
expect ( events ) . toStrictEqual ( [ ] ) ;
172
182
fireEvent . touchMove ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
173
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } ] ) ;
183
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
174
184
fireEvent . touchEnd ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
175
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'touch' } ] ) ;
185
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'touch' , ... defaultModifiers } ] ) ;
176
186
} ) ;
177
187
} ) ;
178
188
@@ -214,7 +224,6 @@ describe('useMove', function () {
214
224
expect ( document . documentElement . style . webkitUserSelect ) . toBe ( 'none' ) ;
215
225
fireEvent . touchEnd ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
216
226
expect ( document . documentElement . style . webkitUserSelect ) . toBe ( 'none' ) ;
217
- // advance by the setTimeout in textSelection, then an additional 16ms for the requestAnimationFrame in runAfterTransition
218
227
act ( ( ) => { jest . advanceTimersByTime ( 316 ) ; } ) ;
219
228
expect ( document . documentElement . style . webkitUserSelect ) . toBe ( mockUserSelect ) ;
220
229
} ) ;
@@ -262,9 +271,9 @@ describe('useMove', function () {
262
271
fireEvent . touchStart ( el , { changedTouches : [ { identifier : 1 , pageX : 1 , pageY : 30 } ] } ) ;
263
272
expect ( eventsChild ) . toStrictEqual ( [ ] ) ;
264
273
fireEvent . touchMove ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
265
- expect ( eventsChild ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } ] ) ;
274
+ expect ( eventsChild ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
266
275
fireEvent . touchEnd ( el , { changedTouches : [ { identifier : 1 , pageX : 10 , pageY : 25 } ] } ) ;
267
- expect ( eventsChild ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'touch' } ] ) ;
276
+ expect ( eventsChild ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'touch' , ... defaultModifiers } , { type : 'move' , pointerType : 'touch' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'touch' , ... defaultModifiers } ] ) ;
268
277
expect ( eventsParent ) . toStrictEqual ( [ ] ) ;
269
278
270
279
} ) ;
@@ -289,7 +298,7 @@ describe('useMove', function () {
289
298
let el = tree . getByTestId ( EXAMPLE_ELEMENT_TESTID ) ;
290
299
291
300
fireEvent . keyDown ( el , { key : Key } ) ;
292
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'keyboard' } , { type : 'move' , pointerType : 'keyboard' , ...Result } , { type : 'moveend' , pointerType : 'keyboard' } ] ) ;
301
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'keyboard' , ... defaultModifiers } , { type : 'move' , pointerType : 'keyboard' , ...defaultModifiers , ... Result } , { type : 'moveend' , pointerType : 'keyboard' , ... defaultModifiers } ] ) ;
293
302
} ) ;
294
303
295
304
it ( 'allows handling other key events' , function ( ) {
@@ -330,9 +339,9 @@ describe('useMove', function () {
330
339
fireEvent . pointerDown ( el , { pointerType : 'pen' , pointerId : 1 , pageX : 1 , pageY : 30 } ) ;
331
340
expect ( events ) . toStrictEqual ( [ ] ) ;
332
341
fireEvent . pointerMove ( el , { pointerType : 'pen' , pointerId : 1 , pageX : 10 , pageY : 25 } ) ;
333
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } ] ) ;
342
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
334
343
fireEvent . pointerUp ( el , { pointerType : 'pen' , pointerId : 1 } ) ;
335
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'pen' } ] ) ;
344
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'pen' , ... defaultModifiers } ] ) ;
336
345
} ) ;
337
346
338
347
it ( 'doesn\'t respond to right click' , function ( ) {
@@ -370,9 +379,9 @@ describe('useMove', function () {
370
379
fireEvent . pointerDown ( el , { pointerType : 'pen' , pointerId : 1 , pageX : 1 , pageY : 30 } ) ;
371
380
expect ( events ) . toStrictEqual ( [ ] ) ;
372
381
fireEvent . pointerMove ( el , { pointerType : 'pen' , pointerId : 1 , pageX : 10 , pageY : 25 } ) ;
373
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } ] ) ;
382
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
374
383
fireEvent . pointerCancel ( el , { pointerType : 'pen' , pointerId : 1 } ) ;
375
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'pen' } ] ) ;
384
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'pen' , ... defaultModifiers } ] ) ;
376
385
} ) ;
377
386
378
387
it ( 'doesn\'t fire anything when tapping' , function ( ) {
@@ -412,9 +421,10 @@ describe('useMove', function () {
412
421
413
422
expect ( events ) . toStrictEqual ( [ ] ) ;
414
423
fireEvent . pointerMove ( el , { pointerType : 'pen' , pointerId : 1 , pageX : 10 , pageY : 25 } ) ;
415
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } ] ) ;
424
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } ] ) ;
416
425
fireEvent . pointerUp ( el , { pointerType : 'pen' , pointerId : 1 } ) ;
417
- expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 } , { type : 'moveend' , pointerType : 'pen' } ] ) ;
426
+ expect ( events ) . toStrictEqual ( [ { type : 'movestart' , pointerType : 'pen' , ... defaultModifiers } , { type : 'move' , pointerType : 'pen' , deltaX : 9 , deltaY : - 5 , ... defaultModifiers } , { type : 'moveend' , pointerType : 'pen' , ... defaultModifiers } ] ) ;
418
427
} ) ;
419
428
} ) ;
420
429
} ) ;
430
+
0 commit comments