@@ -183,7 +183,83 @@ describe('ui.grid.moveColumns', function () {
183
183
expect ( scope . grid . columns [ 3 ] . name ) . toBe ( 'company' ) ;
184
184
expect ( scope . grid . columns [ 4 ] . name ) . toBe ( 'phone' ) ;
185
185
} ) ;
186
-
186
+
187
+ describe ( 'when jQuery is enabled on touch devices' , function ( ) {
188
+
189
+ it ( 'expect column to move right when dragged right' , function ( ) {
190
+ var event = jQuery . Event ( "touchstart" , {
191
+ originalEvent : {
192
+ pageX : 0
193
+ }
194
+ } ) ;
195
+ var columnHeader = angular . element ( element . find ( '.ui-grid-cell-contents' ) [ 0 ] ) ;
196
+ columnHeader . trigger ( event ) ;
197
+ event = jQuery . Event ( "touchmove" , {
198
+ originalEvent : {
199
+ pageX : 200
200
+ }
201
+ } ) ;
202
+ document . trigger ( event ) ;
203
+ document . trigger ( event ) ;
204
+ event = jQuery . Event ( "touchend" ) ;
205
+ document . trigger ( event ) ;
206
+ expect ( scope . grid . columns [ 0 ] . name ) . toBe ( 'gender' ) ;
207
+ expect ( scope . grid . columns [ 1 ] . name ) . toBe ( 'age' ) ;
208
+ expect ( scope . grid . columns [ 2 ] . name ) . toBe ( 'name' ) ;
209
+ expect ( scope . grid . columns [ 3 ] . name ) . toBe ( 'company' ) ;
210
+ expect ( scope . grid . columns [ 4 ] . name ) . toBe ( 'phone' ) ;
211
+ } ) ;
212
+
213
+ it ( 'expect column to move left when dragged left' , function ( ) {
214
+ var event = jQuery . Event ( "touchstart" , {
215
+ originalEvent : {
216
+ pageX : 0
217
+ }
218
+ } ) ;
219
+ var columnHeader = angular . element ( element . find ( '.ui-grid-cell-contents' ) [ 1 ] ) ;
220
+ columnHeader . trigger ( event ) ;
221
+ event = jQuery . Event ( "touchmove" , {
222
+ originalEvent : {
223
+ pageX : - 200
224
+ }
225
+ } ) ;
226
+ document . trigger ( event ) ;
227
+ document . trigger ( event ) ;
228
+ event = jQuery . Event ( "touchend" ) ;
229
+ document . trigger ( event ) ;
230
+ expect ( scope . grid . columns [ 0 ] . name ) . toBe ( 'gender' ) ;
231
+ expect ( scope . grid . columns [ 1 ] . name ) . toBe ( 'name' ) ;
232
+ expect ( scope . grid . columns [ 2 ] . name ) . toBe ( 'age' ) ;
233
+ expect ( scope . grid . columns [ 3 ] . name ) . toBe ( 'company' ) ;
234
+ expect ( scope . grid . columns [ 4 ] . name ) . toBe ( 'phone' ) ;
235
+ } ) ;
236
+
237
+ it ( 'expect column movement to not happen if enableColumnMoving is false' , function ( ) {
238
+ var event = jQuery . Event ( "touchstart" , {
239
+ originalEvent : {
240
+ pageX : 0
241
+ }
242
+ } ) ;
243
+ var columnHeader = angular . element ( element . find ( '.ui-grid-cell-contents' ) [ 3 ] ) ;
244
+ columnHeader . trigger ( event ) ;
245
+ event = jQuery . Event ( "touchmove" , {
246
+ originalEvent : {
247
+ pageX : 200
248
+ }
249
+ } ) ;
250
+ document . trigger ( event ) ;
251
+ document . trigger ( event ) ;
252
+ event = jQuery . Event ( "touchend" ) ;
253
+ document . trigger ( event ) ;
254
+ expect ( scope . grid . columns [ 0 ] . name ) . toBe ( 'name' ) ;
255
+ expect ( scope . grid . columns [ 1 ] . name ) . toBe ( 'gender' ) ;
256
+ expect ( scope . grid . columns [ 2 ] . name ) . toBe ( 'age' ) ;
257
+ expect ( scope . grid . columns [ 3 ] . name ) . toBe ( 'company' ) ;
258
+ expect ( scope . grid . columns [ 4 ] . name ) . toBe ( 'phone' ) ;
259
+ } ) ;
260
+
261
+ } ) ;
262
+
187
263
it ( 'expect column move not to happen if moving across hidden columns' , function ( ) {
188
264
scope . gridOptions . columnDefs [ 1 ] . visible = false ;
189
265
scope . gridApi . colMovable . moveColumn ( 0 , 3 ) ;
@@ -193,5 +269,5 @@ describe('ui.grid.moveColumns', function () {
193
269
expect ( scope . grid . columns [ 3 ] . name ) . toBe ( 'company' ) ;
194
270
expect ( scope . grid . columns [ 4 ] . name ) . toBe ( 'phone' ) ;
195
271
} ) ;
196
-
272
+
197
273
} ) ;
0 commit comments