Laravel: не удается запустить Notification::assertSentTo при тестировании командыPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Laravel: не удается запустить Notification::assertSentTo при тестировании команды

Сообщение Anonymous »


Laravel 9

В моем приложении Laravel уже проводились тесты, проверяющие отправку уведомлений. Типичный

Notification::fake(); $this->post('/forgot-password', ['email' => $user->email]); Уведомление::assertSentTo($user, ResetPassword::class); и некоторые другие подобные. Но... теперь, когда я тестирую уведомления, отправляемые при вызове команды, все происходит по-другому.

публичная функция testHandle_happyPath() { Уведомление::фейк(); $customer = CustomerFactory::new()->default()->create([ 'account_status' => AccountStatus::TRIAL, 'created_at' => Carbon::now()->subDays(28) ]); ConfigurationKey::PREVIOUS_DAYS_TO_NOTIFY_TRIAL_EXPIRY()->setInteger(2); $result = $this->artisan(NotifyTrialsToExpireCommand::class); $клиент->обновить(); $result->assertSuccessful(); Уведомление::assertSentTo($customer, TrialNextToExpireNotification::class); } Результат

Ожидаемое уведомление [App\Notifications\TrialNextToExpireNotification] не было отправлено.

В моей конфигурации phpunit уже есть , чтобы избежать связанных с этим проблем.

Я проверил это вручную, и это работает.

Очевидно, что это напрямую связано с использованием вызова $this->artisan. Какую вещь я мог игнорировать? Этот тип тестов должен быть подготовлен по-другому? Неужели нельзя протестировать таким способом?
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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