Отключение SSR в тестах в Inertia
Давайте отключим серверный рендер на время тестов. В разработке и на проде SSR может быть включён, и Laravel при ответе шлёт HTML с уже собранной разметкой. В PHPUnit такие походы на SSR-сервис лишние: endpoint-тест смотрит на JSON Inertia, а не на итоговый HTML в браузере.
Проще всего выключить SSR
для тестового окружения
переменной INERTIA_SSR_ENABLED
в файле phpunit.xml.
Альтернатива - вызвать
метод disableSsr
фасада Inertia
в базовом классе тестов,
например в setUp.
Туда же можно передать
замыкание, если отключение
нужно только при запуске
unit-тестов.
Давайте добавим настройку в общий класс тестов:
<?php
namespace Tests;
use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
use Inertia\Inertia;
abstract class TestCase extends BaseTestCase
{
protected function setUp(): void
{
parent::setUp();
Inertia::disableSsr();
}
}
Сделайте так, чтобы при запуске тестов SSR Inertia не включался в вашем проекте.