@@ -486,4 +486,71 @@ describe("Reorganize Pages View", () => {
486486 ) ;
487487 } ) ;
488488 } ) ;
489+
490+ describe ( "Drag marker must have the right non-zero dimensions" , ( ) => {
491+ let pages ;
492+
493+ beforeEach ( async ( ) => {
494+ pages = await loadAndWait (
495+ "page_with_number_and_link.pdf" ,
496+ "#viewsManagerToggleButton" ,
497+ "1" ,
498+ null ,
499+ {
500+ enableSplitMerge : true ,
501+ sidebarViewOnLoad : 2 /* = SidebarView.OUTLINES */ ,
502+ }
503+ ) ;
504+ } ) ;
505+
506+ afterEach ( async ( ) => {
507+ await closePages ( pages ) ;
508+ } ) ;
509+
510+ it ( "should check if the drag marker width is non-zero" , async ( ) => {
511+ await Promise . all (
512+ pages . map ( async ( [ browserName , page ] ) => {
513+ await page . waitForSelector ( "#outlinesView" , { visible : true } ) ;
514+ await page . waitForSelector ( "#viewsManagerSelectorButton" , {
515+ visible : true ,
516+ } ) ;
517+ await page . click ( "#viewsManagerSelectorButton" ) ;
518+ await page . waitForSelector ( "#thumbnailsViewMenu" , { visible : true } ) ;
519+ await page . click ( "#thumbnailsViewMenu" ) ;
520+
521+ const thumbSelector = "#thumbnailsView .thumbnailImage" ;
522+ await page . waitForSelector ( thumbSelector , { visible : true } ) ;
523+ const rect1 = await getRect ( page , getThumbnailSelector ( 1 ) ) ;
524+ const rect2 = await getRect ( page , getThumbnailSelector ( 2 ) ) ;
525+
526+ const handleAddedMarker = await waitForDOMMutation (
527+ page ,
528+ mutationList => {
529+ for ( const mutation of mutationList ) {
530+ if ( mutation . type !== "childList" ) {
531+ continue ;
532+ }
533+ for ( const node of mutation . addedNodes ) {
534+ if ( node . classList . contains ( "dragMarker" ) ) {
535+ const rect = node . getBoundingClientRect ( ) ;
536+ return rect . width !== 0 ;
537+ }
538+ }
539+ }
540+ return false ;
541+ }
542+ ) ;
543+
544+ await dragAndDrop (
545+ page ,
546+ getThumbnailSelector ( 1 ) ,
547+ [ [ 0 , rect2 . y - rect1 . y + rect2 . height / 2 ] ] ,
548+ 10
549+ ) ;
550+
551+ await awaitPromise ( handleAddedMarker ) ;
552+ } )
553+ ) ;
554+ } ) ;
555+ } ) ;
489556} ) ;
0 commit comments