Version

Theme

Notifications

Testing

All examples in this guide will be written using Pest. However, you can easily adapt this to PHPUnit.

Session notifications

To check if a notification was sent using the session, use the assertNotified() helper:

use function Pest\Livewire\livewire;
 
it('sends a notification', function () {
livewire(CreatePost::class)
->assertNotified();
});
use Filament\Notifications\Notification;
 
it('sends a notification', function () {
Notification::assertNotified();
});
use function Filament\Notifications\Testing\assertNotified;
 
it('sends a notification', function () {
assertNotified();
});

You may optionally pass a notification title to test for:

use Filament\Notifications\Notification;
use function Pest\Livewire\livewire;
 
it('sends a notification', function () {
livewire(CreatePost::class)
->assertNotified('Unable to create post');
});

Or test if the exact notification was sent:

use Filament\Notifications\Notification;
use function Pest\Livewire\livewire;
 
it('sends a notification', function () {
livewire(CreatePost::class)
->assertNotified(
Notification::make()
->danger()
->title('Unable to create post')
->body('Something went wrong.'),
);
});
Edit on GitHub

Still need help? Join our Discord community or open a GitHub discussion