more tests fixes
This commit is contained in:
@@ -68,6 +68,9 @@ final class HelpdeskTicketBrowserTest extends DuskTestCase
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a property on the Livewire create-ticket component from the real form root.
|
||||
*/
|
||||
private function setTicketCreateProperty(Browser $browser, string $property, mixed $value): void
|
||||
{
|
||||
$encodedProperty = json_encode($property, JSON_THROW_ON_ERROR);
|
||||
@@ -76,19 +79,23 @@ final class HelpdeskTicketBrowserTest extends DuskTestCase
|
||||
$browser->script(<<<JS
|
||||
const form = document.querySelector('.helpdesk-ticket-form');
|
||||
|
||||
let component = form;
|
||||
while (component && ! component.hasAttribute('wire:id')) {
|
||||
component = component.parentElement;
|
||||
if (! form) {
|
||||
throw new Error('Helpdesk ticket create form was not found.');
|
||||
}
|
||||
|
||||
if (! component) {
|
||||
const componentRoot = form.closest('[wire\\:id]');
|
||||
|
||||
if (! componentRoot || ! window.Livewire) {
|
||||
throw new Error('Helpdesk ticket create Livewire component was not found.');
|
||||
}
|
||||
|
||||
window.Livewire.find(component.getAttribute('wire:id')).set({$encodedProperty}, {$encodedValue});
|
||||
window.Livewire.find(componentRoot.getAttribute('wire:id')).set({$encodedProperty}, {$encodedValue});
|
||||
JS);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a property on the Livewire ticket-show component from the real show-page root.
|
||||
*/
|
||||
private function setTicketShowProperty(Browser $browser, string $property, mixed $value): void
|
||||
{
|
||||
$encodedProperty = json_encode($property, JSON_THROW_ON_ERROR);
|
||||
@@ -97,16 +104,17 @@ JS);
|
||||
$browser->script(<<<JS
|
||||
const show = document.querySelector('[dusk="helpdesk-ticket-show"]');
|
||||
|
||||
let component = show;
|
||||
while (component && ! component.hasAttribute('wire:id')) {
|
||||
component = component.parentElement;
|
||||
if (! show) {
|
||||
throw new Error('Helpdesk ticket show root was not found.');
|
||||
}
|
||||
|
||||
if (! component) {
|
||||
const componentRoot = show.closest('[wire\\:id]');
|
||||
|
||||
if (! componentRoot || ! window.Livewire) {
|
||||
throw new Error('Helpdesk ticket show Livewire component was not found.');
|
||||
}
|
||||
|
||||
window.Livewire.find(component.getAttribute('wire:id')).set({$encodedProperty}, {$encodedValue});
|
||||
window.Livewire.find(componentRoot.getAttribute('wire:id')).set({$encodedProperty}, {$encodedValue});
|
||||
JS);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user