breakign dusk tests

This commit is contained in:
Mark Gregory
2026-06-19 12:28:03 +01:00
parent e21c09a005
commit ac694f8aae
26 changed files with 43 additions and 12 deletions
@@ -11,6 +11,7 @@
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
@yield('content')
{{-- Laravel Mix - JS File --}}
@@ -11,6 +11,7 @@
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
@yield('content')
{{-- Laravel Mix - JS File --}}
@@ -25,6 +25,7 @@
</script>
<body class="min-h-screen bg-white font-sans text-zinc-950 antialiased dark:bg-zinc-950 dark:text-zinc-100">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<style>
:root {
--wms-sidebar-width: 288px;
@@ -7,7 +7,7 @@
$visibleCommentCount = $ticket->comments->count();
@endphp
<div class="hd-helpdesk-surface space-y-6" dusk="helpdesk-ticket-show">
<div data-dusk="helpdesk-ticket-show" dusk="helpdesk-ticket-show" class="hd-helpdesk-surface space-y-6">
<div class="overflow-hidden rounded-3xl border border-zinc-200 bg-white shadow-sm dark:border-zinc-700 dark:bg-zinc-900">
<div class="bg-gradient-to-br from-slate-950 via-slate-900 to-blue-950 px-6 py-7 text-white">
<div class="flex flex-col gap-4 lg:flex-row lg:items-center lg:justify-between">
@@ -285,7 +285,7 @@
<button type="button" data-helpdesk-block="code" class="rounded-lg border px-2 py-1 text-xs">Code</button>
</div>
<div id="ticket-comment-body-editor" dusk="ticket-comment-editor" contenteditable="true" role="textbox" aria-multiline="true" data-helpdesk-rich-editor data-helpdesk-sync-target="ticket-comment-body" class="block min-h-[20rem] w-full rounded-[1.5rem] border border-zinc-300 bg-white p-6 text-base leading-8 text-zinc-900 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-2 focus:ring-blue-500 dark:border-zinc-700 dark:bg-zinc-950 dark:text-zinc-100 prose max-w-none dark:prose-invert">{!! $oldCommentBody !!}</div>
<textarea id="ticket-comment-body" name="commentBody" required class="sr-only" tabindex="-1" aria-hidden="true">{{ $oldCommentBody }}</textarea>
<textarea dusk="comment-body" data-dusk="comment-body" id="ticket-comment-body" name="commentBody" required class="sr-only" tabindex="-1" aria-hidden="true">{{ $oldCommentBody }}</textarea>
</div>
@can('update', $ticket)
@@ -727,7 +727,7 @@
@endforelse
</select>
@error('agent_id') <p class="text-sm font-bold text-red-600 dark:text-red-400">{{ $message }}</p> @enderror
<button type="submit" dusk="update-agent" class="inline-flex items-center justify-center rounded-lg bg-emerald-600 px-3 py-2 text-xs font-black text-white shadow-sm transition hover:bg-emerald-700 focus:outline-none focus:ring-2 focus:ring-emerald-400/70">
<button dusk="post-comment" data-dusk="post-comment" type="submit" dusk="update-agent" class="inline-flex items-center justify-center rounded-lg bg-emerald-600 px-3 py-2 text-xs font-black text-white shadow-sm transition hover:bg-emerald-700 focus:outline-none focus:ring-2 focus:ring-emerald-400/70">
<i class="fa-solid fa-user-check mr-2" aria-hidden="true"></i>
<span>Assign agent</span>
</button>
@@ -25,6 +25,7 @@
</script>
<body class="min-h-screen bg-white font-sans text-zinc-950 antialiased dark:bg-zinc-950 dark:text-zinc-100">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<style>
:root {
--wms-sidebar-width: 288px;
@@ -11,6 +11,7 @@
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
@yield('content')
{{-- Laravel Mix - JS File --}}
@@ -25,6 +25,7 @@
</script>
<body class="h-screen min-h-screen overflow-hidden bg-white font-sans text-zinc-950 antialiased dark:bg-zinc-950 dark:text-zinc-100">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<style>
:root {
--wms-sidebar-width: 288px;
@@ -25,6 +25,7 @@
</script>
<body class="h-screen min-h-screen overflow-hidden bg-white font-sans text-zinc-950 antialiased dark:bg-zinc-950 dark:text-zinc-100">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
@vite(['resources/css/app.css'])
+1
View File
@@ -42,6 +42,7 @@
</style>
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="flex-center position-ref full-height">
<div class="content">
<div class="title">
+1
View File
@@ -17,6 +17,7 @@
</style>
</head>
<body class="antialiased bg-white text-black">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="relative flex items-top justify-center min-h-screen bg-white text-black sm:items-center sm:pt-0" role="main">
<div class="max-w-xl mx-auto sm:px-6 lg:px-8">
<div class="flex items-center pt-8 sm:justify-start sm:pt-0">
@@ -4,6 +4,7 @@
@include('partials.head')
<body class="min-h-screen bg-white dark:bg-zinc-800">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<flux:header container class="border-b border-zinc-200 bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900">
<flux:sidebar.toggle class="lg:hidden mr-2" icon="bars-2" inset="left" />
@@ -25,6 +25,7 @@
</script>
<body class="min-h-screen bg-white font-sans text-zinc-950 antialiased dark:bg-zinc-950 dark:text-zinc-100">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
@vite(['resources/css/app.css'])
@@ -4,6 +4,7 @@
@include('partials.head')
</head>
<body class="min-h-screen bg-neutral-100 antialiased dark:bg-linear-to-b dark:from-neutral-950 dark:to-neutral-900">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="bg-muted flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10">
<div class="flex w-full max-w-md flex-col gap-6">
<a href="{{ route('home') }}" class="flex flex-col items-center gap-2 font-medium" wire:navigate>
@@ -4,6 +4,7 @@
@include('partials.head')
</head>
<body class="min-h-screen bg-white antialiased dark:bg-linear-to-b dark:from-neutral-950 dark:to-neutral-900">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="bg-background flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10">
<div class="flex w-full max-w-sm flex-col gap-2">
<a href="{{ route('home') }}" class="flex flex-col items-center gap-2 font-medium" wire:navigate>
@@ -4,6 +4,7 @@
@include('partials.head')
</head>
<body class="min-h-screen bg-white antialiased dark:bg-linear-to-b dark:from-neutral-950 dark:to-neutral-900">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="relative grid h-dvh flex-col items-center justify-center px-8 sm:px-0 lg:max-w-none lg:grid-cols-2 lg:px-0">
<div class="bg-muted relative hidden h-full flex-col p-10 text-white lg:flex dark:border-e dark:border-neutral-800">
<div class="absolute inset-0 bg-neutral-900"></div>
+1
View File
@@ -44,6 +44,7 @@
@vite(['resources/css/app.css'])
</head>
<body class="font-sans antialiased bg-background text-foreground">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<div class="min-h-screen flex items-center justify-center p-4">
<div class="w-full max-w-md">
<!-- Card Container -->
+1
View File
@@ -13,6 +13,7 @@
</style>
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<table class="table table-bordered table-condensed table-striped">
@foreach($data as $row)
@if ($loop->first)
@@ -127,7 +127,8 @@
<body
{{
$attributes
->merge($livewire?->getExtraBodyAttributes() ?? [], escape: false)
->
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>merge($livewire?->getExtraBodyAttributes() ?? [], escape: false)
->class([
'fi-body',
'fi-panel-' . filament()->getId(),
+1
View File
@@ -26,6 +26,7 @@ width: 100% !important;
{!! $head ?? '' !!}
</head>
<body>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<table class="wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
<tr>
+1
View File
@@ -16,6 +16,7 @@
{{ $head ?? '' }}
</head>
<body {{ $attributes }}>
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
{{ $slot }}
</body>
</html>
+1
View File
@@ -29,6 +29,7 @@
</style>
</head>
<body class="bg-[#FDFDFC] dark:bg-[#0a0a0a] text-[#1b1b18] flex p-6 lg:p-8 items-center lg:justify-center min-h-screen flex-col">
<div data-dusk="page-ready" style="position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);" aria-hidden="true"></div>
<header class="w-full lg:max-w-4xl max-w-[335px] text-sm mb-6 not-has-[nav]:hidden">
@if (Route::has('login'))
<nav class="flex items-center justify-end gap-4">
+12 -1
View File
@@ -2,13 +2,24 @@
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Route;
use Modules\Platform\app\Http\Controllers\PlatformDashboardController;
Route::get('/', function () {
return auth()->check()
? redirect()->route('platform.dashboard')
? redirect()->route('dashboard')
: redirect()->route('login');
})->name('home');
Route::get('/dashboard', PlatformDashboardController::class)
->middleware(['auth'])
->name('dashboard');
require __DIR__.'/settings.php';
Route::get('/api/countries/resolve/{code}', function (string $code) {
@@ -22,7 +22,7 @@ class AuthBrandingLayoutBrowserTest extends DuskTestCase
$this->browse(function (Browser $browser) use ($page, $expectedText): void {
$browser->resize(1280, 900)
->visit($page)
->waitFor('body', 10)
->waitFor('[data-dusk="page-ready"]')
->assertSee('WMS')
->assertSee($expectedText)
->assertScript('document.documentElement.scrollWidth <= document.documentElement.clientWidth + 1');
@@ -63,7 +63,7 @@ JS,
protected function openMobileNavigation(Browser $browser): void
{
$browser->resize(390, 844)
->waitFor('body', 10)
->waitFor('[data-dusk="page-ready"]')
->pause(250);
$this->removeDebugbar($browser);
@@ -20,7 +20,7 @@ class MobileNavigationBrowserTest extends DuskTestCase
$browser->loginAs($admin)
->resize(390, 844)
->visit('/admin')
->waitFor('body', 10)
->waitFor('[data-dusk="page-ready"]')
->assertSee('Platform')
->assertScript('document.documentElement.scrollWidth <= document.documentElement.clientWidth + 1');
@@ -47,7 +47,7 @@ class MobileNavigationBrowserTest extends DuskTestCase
$browser->loginAs($admin)
->resize(390, 844)
->visit('/admin')
->waitFor('body', 10);
->waitFor('[data-dusk="page-ready"]');
foreach ($paths as $path => $title) {
$this->openMobileNavigation($browser);
@@ -66,7 +66,7 @@ class MobileNavigationBrowserTest extends DuskTestCase
$browser->loginAs($admin)
->resize(390, 844)
->visit('/admin')
->waitFor('body', 10)
->waitFor('[data-dusk="page-ready"]')
->assertSee('Platform')
->assertScript('document.documentElement.scrollWidth <= document.documentElement.clientWidth + 1')
->resize(768, 1024)
@@ -38,7 +38,7 @@ class WmsResponsiveNavigationTest extends DuskTestCase
$browser->loginAs($admin)
->resize(390, 844)
->visit('/admin')
->waitFor('body', 10)
->waitFor('[data-dusk="page-ready"]')
->assertSee('Platform')
->assertScript('document.documentElement.scrollWidth <= document.documentElement.clientWidth + 1');
@@ -59,7 +59,7 @@ class WmsResponsiveNavigationTest extends DuskTestCase
$browser->loginAs($admin)
->resize(390, 844)
->visit('/admin')
->waitFor('body', 10);
->waitFor('[data-dusk="page-ready"]');
$this->openMobileNavigation($browser);
$this->closeMobileNavigation($browser);