Как имитировать/имитировать события очереди Laravel в тестах?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как имитировать/имитировать события очереди Laravel в тестах?

Сообщение Anonymous »

У меня есть прослушиватель событий, который прослушивает событие JobProcessing. Я хочу протестировать этот прослушиватель событий, для этого мне нужно смоделировать/издеваться над событием очереди JobProcessing. TestJob — это обычный класс задания Laravel.
Попытка 1 приводит к следующему:

Ожидаемый параметр введите '\Illuminate\Contracts\Queue\Job', 'namespace\TestJob'

Код: Выделить всё

public function test_updates_job_status_to_processing_when_job_starts_processing(): void
{
$event = new JobProcessing(
'default',
new TestJob(),
);

$eventListener = $this->app->make(UpdateJobStatus::class);
$eventListener->handle($event);

// assertions
}
Затем я попробовал следующее (

Код: Выделить всё

Queue::pop
возвращает реальный экземпляр задания):
Попытка 2 приводит к следующему:

Вызов участнику функция uuid() имеет значение null (поэтому Queue::pop возвращает значение null)

Код: Выделить всё

public function test_updates_job_status_to_processing_when_job_starts_processing(): void
{
Queue::push(new TestJob);

$event = new JobProcessing(
'default',
Queue::pop(),
);

$eventListener = $this->app->make(UpdateJobStatus::class);
$eventListener->handle($event);

// assertions
}
Как правильно протестировать взаимодействие прослушивателя событий с событиями очереди Laravel?


Подробнее здесь: https://stackoverflow.com/questions/786 ... s-in-tests
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как имитировать/имитировать события очереди Laravel в тестах?
    Anonymous » » в форуме Php
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Как имитировать/имитировать события очереди Laravel в тестах?
    Anonymous » » в форуме Php
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous
  • Как имитировать/имитировать событие очереди Laravel JobQueued в тесте?
    Anonymous » » в форуме Php
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Как имитировать/имитировать событие очереди Laravel JobQueued в тесте?
    Anonymous » » в форуме Php
    0 Ответы
    37 Просмотры
    Последнее сообщение Anonymous
  • Как имитировать/имитировать событие очереди Laravel JobQueued в тесте?
    Anonymous » » в форуме Php
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»