РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗ppinSpTsEt 107 of 112 menu
◀ ▶

Прочие пропсы в Inertia

Бывает, что в ответе у работника много полей, а тест должен проверить только имя. Inertia следит, чтобы внутри области видимости вы затронули каждый пропс: если поле есть в JSON, но к нему не обращались, утверждение упадёт. Это защищает от случайных изменений, но мешает, когда часть данных намеренно неважна для сценария.

Метод etc говорит фреймворку: остальные ключи на этом уровне можно не перечислять. Его ставят в конце цепочки внутри области после явных проверок важных полей. Часто рядом используют метод missing, чтобы запретить отдельные ключи, а всё остальное закрыть через etc.

Давайте оставим проверку имени и разрешим прочие поля:

<?php namespace Tests\Feature; use Inertia\Testing\AssertableInertia as Assert; use Tests\TestCase; class WorkersPageTest extends TestCase { public function test_worker_allows_extra_fields(): void { $this->get('/workers/1') ->assertInertia(fn (Assert $page) => $page ->has('worker', fn (Assert $page) => $page ->has('name') ->etc() ) ); } }

Сделайте тест карточки мастера, чтобы проверялось поле role, а остальные ключи объекта master можно было не перечислять.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить