seedLookupData(); $user = $this->user(['name' => 'Ticket Browser User']); $this->browse(function (Browser $browser) use ($user, $fixtures): void { $browser->loginAs($user) ->visitRoute('helpdesk.tickets.create') ->waitFor('.helpdesk-ticket-form') ->assertSee('Create ticket') ->type('input[data-dusk="ticket-subject"]', 'Browser created helpdesk ticket'); $this->setTicketCreateProperty($browser, 'body', '
This browser ticket proves the form saves correctly.
'); $this->setTicketCreateProperty($browser, 'board_id', $fixtures['board']->id); $this->setTicketCreateProperty($browser, 'priority_id', $fixtures['high']->id); $this->setTicketCreateProperty($browser, 'category_id', $fixtures['category']->id); $this->setTicketCreateProperty($browser, 'team_id', $fixtures['team']->id); $this->setTicketCreateProperty($browser, 'project_id', $fixtures['project']->id); $browser->click('button[data-dusk="ticket-create-submit"]') ->waitFor('@helpdesk-ticket-index', 10) ->assertSee('Browser created helpdesk ticket') ->assertSee('High') ->assertSee('Support'); }); } public function test_user_can_add_nested_response_in_browser(): void { $fixtures = $this->seedLookupData(); $user = $this->user(['name' => 'Response Browser User']); $ticket = $this->ticket([ 'owner' => $user, 'status_id' => $fixtures['open']->id, 'board_id' => $fixtures['board']->id, 'priority_id' => $fixtures['normal']->id, 'category_id' => $fixtures['category']->id, 'team_id' => $fixtures['team']->id, 'project_id' => $fixtures['project']->id, 'subject' => 'Browser response ticket', ]); $this->browse(function (Browser $browser) use ($user, $ticket): void { $browser->loginAs($user) ->visitRoute('helpdesk.tickets.show', $ticket) ->waitFor('@helpdesk-ticket-show') ->assertSee('Browser response ticket'); $this->setTicketShowProperty($browser, 'commentBody', 'First browser response
'); $browser->press('@post-comment') ->waitForText('First browser response', 10) ->assertSee('First browser response'); }); } private function setTicketCreateProperty(Browser $browser, string $property, mixed $value): void { $encodedProperty = json_encode($property, JSON_THROW_ON_ERROR); $encodedValue = json_encode($value, JSON_THROW_ON_ERROR); $browser->script(<<