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

assertNotDispatched

Метод assertNotDispatched класса Testable проверяет, что определённое событие не было отправлено (dispatched) из компонента в процессе теста. Этот метод полезен, когда нужно убедиться, что определённое событие не было вызвано при выполнении действия. В метод передаётся имя события, которое не должно было быть отправлено.

Синтаксис

$component->assertNotDispatched('eventName');

Метод принимает имя события в виде строки. Возвращает тот же экземпляр Testable для построения цепочки утверждений.

Пример

Давайте проверим, что событие не отправляется при выполнении метода, которое не должно вызывать это событие:

<?php namespace AppLivewire; use LivewireComponent; class Counter extends Component { public $num = 0; protected $listeners = ['increment' => 'inc']; public function inc() { $this->num++; } public function doNothing() { // Метод, который не отправляет событие } public function render() { return view('livewire.counter'); } } ?>
<?php use LivewireLivewire; use AppLivewireCounter; it('does not dispatch increment event on doNothing', function () { $component = Livewire::test(Counter::class); $component ->call('doNothing') ->assertNotDispatched('increment'); }); ?>

Результат выполнения кода:

OK (1 test, 1 assertion)

Пример

Проверим, что событие не отправляется несколько раз при действии, которое не должно его вызывать:

<?php namespace AppLivewire; use LivewireComponent; class UserNotifier extends Component { public $status = 'idle'; public function activate() { $this->status = 'active'; // Событие не отправляется } public function render() { return view('livewire.user-notifier'); } } ?>
<?php use LivewireLivewire; use AppLivewireUserNotifier; it('does not send notification event on activate', function () { $component = Livewire::test(UserNotifier::class); $component ->call('activate') ->assertNotDispatched('notification-sent'); }); ?>

Результат выполнения кода:

OK (1 test, 1 assertion)

Смотрите также

  • метод assertDispatched,
    который проверяет отправку события
  • метод dispatch,
    который отправляет событие из теста
  • метод call,
    который вызывает метод компонента в тесте
  • метод assertOk,
    который проверяет успешный статус ответа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить