@@ -5,7 +5,6 @@ import path from 'path';
55
66const containerUrl = `file://${ path . resolve ( __dirname , '../../../../tests/container.html' ) } ` ;
77
8- const SCHEDULER_SELECTOR = '#container' ;
98const REDUCE_CELLS_CSS = `
109.dx-scheduler-cell-sizes-vertical {
1110 height: 25px;
@@ -92,22 +91,19 @@ const clearClientData = async (page, callbacks: string[]) => {
9291 } , callbacks ) ;
9392} ;
9493
95- test . describe ( 'Offset: Api callbacks' , ( ) => {
96- test . beforeEach ( async ( { page } ) => {
97- await page . goto ( containerUrl ) ;
98- await page . waitForFunction ( ( ) => ! ! ( window as any ) . DevExpress && ! ! ( window as any ) . $ ) ;
99- await page . evaluate ( ( theme ) => new Promise < void > ( ( resolve ) => {
100- ( window as any ) . DevExpress . ui . themes . ready ( resolve ) ;
101- ( window as any ) . DevExpress . ui . themes . current ( theme ) ;
102- } ) , process . env . THEME || 'fluent.blue.light' ) ;
103- } ) ;
94+ const setupPage = async ( page : any ) => {
95+ await page . goto ( containerUrl ) ;
96+ await page . waitForFunction ( ( ) => ! ! ( window as any ) . DevExpress && ! ! ( window as any ) . $ ) ;
97+ await page . evaluate ( ( theme : string ) => new Promise < void > ( ( resolve ) => {
98+ ( window as any ) . DevExpress . ui . themes . ready ( resolve ) ;
99+ ( window as any ) . DevExpress . ui . themes . current ( theme ) ;
100+ } ) , process . env . THEME || 'fluent.blue.light' ) ;
101+ } ;
104102
105- [
106- 0 ,
107- - 700 ,
108- 700 ,
109- ] . forEach ( ( offset ) => {
110- test ( `onAppointmentRendered (offset: ${ offset } )` , async ( { page } ) => {
103+ test . describe ( 'Offset: Api callbacks' , ( ) => {
104+ test ( 'onAppointmentRendered' , async ( { page } ) => {
105+ for ( const offset of [ 0 , - 700 , 700 ] ) {
106+ await setupPage ( page ) ;
111107 await initClientTesting ( page , [ 'onAppointmentRendered' ] ) ;
112108 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
113109 await page . evaluate ( ( { ds, off } ) => {
@@ -133,9 +129,12 @@ test.describe('Offset: Api callbacks', () => {
133129 expect ( results [ 0 ] . appointmentData ) . toEqual ( EXPECTED . appointmentData ) ;
134130
135131 await clearClientData ( page , [ 'onAppointmentRendered' ] ) ;
136- } ) ;
132+ }
133+ } ) ;
137134
138- test ( `onAppointmentAdding and onAppointmentAdded (offset: ${ offset } )` , async ( { page } ) => {
135+ test ( 'onAppointmentAdding and onAppointmentAdded' , async ( { page } ) => {
136+ for ( const offset of [ 0 , - 700 , 700 ] ) {
137+ await setupPage ( page ) ;
139138 await initClientTesting ( page , [ 'onAppointmentAdding' , 'onAppointmentAdded' ] ) ;
140139 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
141140 await page . evaluate ( ( { ds, off } ) => {
@@ -179,9 +178,12 @@ test.describe('Offset: Api callbacks', () => {
179178 expect ( addedResults [ 0 ] ) . toEqual ( expectedAppointmentData ) ;
180179
181180 await clearClientData ( page , [ 'onAppointmentAdding' , 'onAppointmentAdded' ] ) ;
182- } ) ;
181+ }
182+ } ) ;
183183
184- test ( `onAppointmentClick and onAppointmentDbClick (offset: ${ offset } )` , async ( { page } ) => {
184+ test ( 'onAppointmentClick and onAppointmentDbClick' , async ( { page } ) => {
185+ for ( const offset of [ 0 , - 700 , 700 ] ) {
186+ await setupPage ( page ) ;
185187 await initClientTesting ( page , [ 'onAppointmentClick' , 'onAppointmentDblClick' ] ) ;
186188 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
187189 await page . evaluate ( ( { ds, off } ) => {
@@ -214,9 +216,12 @@ test.describe('Offset: Api callbacks', () => {
214216 expect ( dblClickResults [ 0 ] . appointmentData ) . toEqual ( EXPECTED . appointmentData ) ;
215217
216218 await clearClientData ( page , [ 'onAppointmentClick' , 'onAppointmentDblClick' ] ) ;
217- } ) ;
219+ }
220+ } ) ;
218221
219- test ( `onAppointmentTooltipShowing and onAppointmentFormOpening (offset: ${ offset } )` , async ( { page } ) => {
222+ test ( 'onAppointmentTooltipShowing and onAppointmentFormOpening' , async ( { page } ) => {
223+ for ( const offset of [ 0 , - 700 , 700 ] ) {
224+ await setupPage ( page ) ;
220225 await initClientTesting ( page , [ 'onAppointmentTooltipShowing' , 'onAppointmentFormOpening' ] ) ;
221226 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
222227 await page . evaluate ( ( { ds, off } ) => {
@@ -257,9 +262,12 @@ test.describe('Offset: Api callbacks', () => {
257262 expect ( formResults [ 0 ] ) . toEqual ( EXPECTED . appointmentData ) ;
258263
259264 await clearClientData ( page , [ 'onAppointmentTooltipShowing' , 'onAppointmentFormOpening' ] ) ;
260- } ) ;
265+ }
266+ } ) ;
261267
262- test ( `onAppointmentDeleting and onAppointmentDeleted (offset: ${ offset } )` , async ( { page } ) => {
268+ test ( 'onAppointmentDeleting and onAppointmentDeleted' , async ( { page } ) => {
269+ for ( const offset of [ 0 , - 700 , 700 ] ) {
270+ await setupPage ( page ) ;
263271 await initClientTesting ( page , [ 'onAppointmentDeleting' , 'onAppointmentDeleted' ] ) ;
264272 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
265273 await page . evaluate ( ( { ds, off } ) => {
@@ -297,9 +305,12 @@ test.describe('Offset: Api callbacks', () => {
297305 expect ( deletedResults [ 0 ] ) . toEqual ( EXPECTED . appointmentData ) ;
298306
299307 await clearClientData ( page , [ 'onAppointmentDeleting' , 'onAppointmentDeleted' ] ) ;
300- } ) ;
308+ }
309+ } ) ;
301310
302- test ( `onAppointmentUpdating and onAppointmentUpdated (offset: ${ offset } )` , async ( { page } ) => {
311+ test ( 'onAppointmentUpdating and onAppointmentUpdated' , async ( { page } ) => {
312+ for ( const offset of [ 0 , - 700 , 700 ] ) {
313+ await setupPage ( page ) ;
303314 await initClientTesting ( page , [ 'onAppointmentUpdating' , 'onAppointmentUpdated' ] ) ;
304315 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
305316 await page . evaluate ( ( { ds, off } ) => {
@@ -329,7 +340,6 @@ test.describe('Offset: Api callbacks', () => {
329340 const expectedNewData = getAppointmentAfterUpdate ( offset ) ;
330341
331342 const appointment = page . locator ( '.dx-scheduler-appointment' ) . filter ( { hasText : APPOINTMENT_TITLE } ) ;
332- // TODO: t.drag(element, -100, 0) - drag by pixel offset
333343 const box = await appointment . boundingBox ( ) ;
334344 if ( box ) {
335345 await page . mouse . move ( box . x + box . width / 2 , box . y + box . height / 2 ) ;
@@ -346,9 +356,12 @@ test.describe('Offset: Api callbacks', () => {
346356 expect ( updatedResults [ 0 ] ) . toEqual ( expectedNewData ) ;
347357
348358 await clearClientData ( page , [ 'onAppointmentUpdating' , 'onAppointmentUpdated' ] ) ;
349- } ) ;
359+ }
360+ } ) ;
350361
351- test ( `onAppointmentContextMenu (offset: ${ offset } )` , async ( { page } ) => {
362+ test ( 'onAppointmentContextMenu' , async ( { page } ) => {
363+ for ( const offset of [ 0 , - 700 , 700 ] ) {
364+ await setupPage ( page ) ;
352365 await initClientTesting ( page , [ 'onAppointmentContextMenu' ] ) ;
353366 await insertStylesheetRulesToPage ( page , REDUCE_CELLS_CSS ) ;
354367 await page . evaluate ( ( { ds, off } ) => {
@@ -375,6 +388,6 @@ test.describe('Offset: Api callbacks', () => {
375388 expect ( contextMenuResults [ 0 ] . appointmentData ) . toEqual ( EXPECTED . appointmentData ) ;
376389
377390 await clearClientData ( page , [ 'onAppointmentContextMenu' ] ) ;
378- } ) ;
391+ }
379392 } ) ;
380393} ) ;
0 commit comments