tenantUser(); $this->seedWarehouse($user->company); $this->browse(function (Browser $browser) use ($user): void { $browser->resize(1440, 1000) ->loginAs($user) ->visit('/dashboard') ->waitFor('.wms-app-shell', 10) ->waitFor('.wms-content', 10); $browser->script(<<<'JS' const main = document.querySelector('[data-test="main-content"], .wms-content, main, [role="main"]'); const filler = document.createElement('div'); filler.setAttribute('data-test', 'scroll-filler'); filler.style.height = '2200px'; main.appendChild(filler); main.scrollTop = 900; JS); $sidebarTop = $browser->script('const sidebar = document.querySelector("[data-test=\\"desktop-sidebar\\"], .wms-sidebar, aside"); return sidebar ? Math.round(sidebar.getBoundingClientRect().top) : 0;')[0]; $bodyScrollTop = $browser->script('return Math.round(document.scrollingElement.scrollTop);')[0]; $mainScrollTop = $browser->script('return Math.round(document.querySelector("[data-test=\\"main-content\\"], .wms-content, main, [role=\\"main\\"]").scrollTop);')[0]; $this->assertSame(0, $sidebarTop); $this->assertSame(0, $bodyScrollTop); $this->assertGreaterThan(0, $mainScrollTop); }); } }