Test resources with multi tenants
- Published: 30 Mar 2024 Updated: 04 May 2024
A starting point for testing filamentPHP with tenant aware resources.
test render tenant owned records
1beforeEach(function ((){
2 $this->company = Club::factory()->create();
3 $this->user = User::factory()->create();
4 $this->user->company()->attach($this->company);
5
6 actingAs($this->user);
7 Filament::setTenant($this->company);
8});
test listing the tenant records only
1use function Pest\Livewire\livewire;
2
3it('can only render tenant owned records', function () {
4 // Edit logic here ??
5 $posts = Post::factory()->count(4)->create();
6 $trashedPosts = Post::factory()
7 ->trashed()
8 ->count(6)
9 ->create();
10
11 livewire(PostResource\Pages\ListPosts::class)
12 ->assertCanSeeTableRecords($posts)
13 ->assertCanNotSeeTableRecords($trashedPosts)
14 ->assertCountTableRecords(4);
15});
Related Tricks:
Bring the sticky actions back form filament v2
Usability: Knowing whether or not the record was saved.
how to make actions sticky in tables when you have a lot of columns
Integrate Language Switcher in User Menu for a Cleaner Top Bar
make all Field or any components translatable