misc updates with tests failing

This commit is contained in:
Mark Gregory
2026-06-29 09:42:00 +01:00
parent 7b40a55b0e
commit eaa8c6ebe3
6 changed files with 132 additions and 183 deletions
@@ -8,45 +8,39 @@ use Tests\TestCase;
final class TicketCreateAttachmentBrowserSafetyTest extends TestCase
{
public function test_ticket_create_view_does_not_reinject_application_assets_inside_livewire_component(): void
public function test_ticket_create_uses_standard_livewire_temporary_uploads(): void
{
$view = file_get_contents(dirname(__DIR__, 2) . '/Resources/views/livewire/ticket-create.blade.php');
self::assertIsString($view);
self::assertStringNotContainsString("@vite(['resources/css/app.css', 'resources/js/app.js'])", $view);
self::assertStringContainsString('wire:submit.prevent="save"', $view);
}
public function test_ticket_create_attachment_input_is_owned_by_livewire_and_has_a_stable_key(): void
{
$view = file_get_contents(dirname(__DIR__, 2) . '/Resources/views/livewire/ticket-create.blade.php');
self::assertIsString($view);
self::assertStringContainsString('wire:key="ticket-create-attachments-uploader"', $view);
self::assertStringContainsString('type="file"', $view);
self::assertStringContainsString('wire:model="attachments"', $view);
self::assertStringContainsString('multiple', $view);
self::assertStringContainsString('wire:key="ticket-create-attachments-input"', $view);
self::assertStringContainsString('type="file" wire:model="attachments" multiple', $view);
self::assertStringNotContainsString('$wire.uploadMultiple', $view);
self::assertStringNotContainsString("new CustomEvent('livewire-upload-start'", $view);
self::assertStringNotContainsString("new CustomEvent('livewire-upload-finish'", $view);
}
public function test_ticket_create_attachment_script_registers_global_listeners_once(): void
public function test_ticket_create_does_not_mix_existing_ticket_upload_behaviour_into_create_form(): void
{
$view = file_get_contents(dirname(__DIR__, 2) . '/Resources/views/livewire/ticket-create.blade.php');
self::assertIsString($view);
self::assertStringContainsString('window.__helpdeskTicketCreateAttachmentListenersRegistered', $view);
self::assertStringContainsString('window.__helpdeskTicketCreateLivewireClearListenerRegistered', $view);
self::assertStringContainsString("window.dispatchEvent(new CustomEvent('helpdesk-attachments-reset'))", $view);
self::assertStringNotContainsString('@vite([\'resources/css/app.css\', \'resources/js/app.js\'])', $view);
self::assertStringNotContainsString('helpdeskAttachmentDropzone', $view);
self::assertStringNotContainsString('DataTransfer', $view);
self::assertStringNotContainsString('$wire.uploadMultiple', $view);
self::assertStringNotContainsString('input.files =', $view);
self::assertStringNotContainsString('helpdesk-editor-files-pasted', $view);
self::assertStringNotContainsString('x-bind:disabled="helpdeskAttachmentsUploading"', $view);
}
public function test_create_attachment_browser_test_does_not_use_livewire_internal_dom_selectors(): void
public function test_ticket_create_shows_uploaded_temporary_file_names_from_livewire_property(): void
{
$test = file_get_contents(dirname(__DIR__, 1) . '/Browser/HelpdeskCreateTicketAttachmentBrowserTest.php');
$view = file_get_contents(dirname(__DIR__, 2) . '/Resources/views/livewire/ticket-create.blade.php');
self::assertIsString($test);
self::assertStringNotContainsString('closest(', $test);
self::assertStringNotContainsString('Livewire.find', $test);
self::assertStringContainsString("attach('#attachments'", $test);
self::assertIsString($view);
self::assertStringContainsString('@if (count($attachments) > 0)', $view);
self::assertStringContainsString('$attachment->getClientOriginalName()', $view);
self::assertStringContainsString('wire:loading wire:target="attachments"', $view);
}
}