From 55db8970dd051449e35321f26e94c79d54c7f278 Mon Sep 17 00:00:00 2001 From: LRLJoe Date: Tue, 12 Nov 2024 22:32:05 +0000 Subject: [PATCH 1/2] Add test for FilterApplied being dispatched --- .../Unit/Traits/Helpers/FilterHelpersTest.php | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/tests/Unit/Traits/Helpers/FilterHelpersTest.php b/tests/Unit/Traits/Helpers/FilterHelpersTest.php index 25aac3341..65c656059 100644 --- a/tests/Unit/Traits/Helpers/FilterHelpersTest.php +++ b/tests/Unit/Traits/Helpers/FilterHelpersTest.php @@ -2,7 +2,10 @@ namespace Rappasoft\LaravelLivewireTables\Tests\Unit\Traits\Helpers; +use Illuminate\Support\Facades\Event; use Rappasoft\LaravelLivewireTables\Tests\TestCase; +use Rappasoft\LaravelLivewireTables\Tests\Http\Livewire\PetsTable; +use Rappasoft\LaravelLivewireTables\Events\FilterApplied; use Rappasoft\LaravelLivewireTables\Views\Filters\DateFilter; use Rappasoft\LaravelLivewireTables\Views\Filters\DateTimeFilter; use Rappasoft\LaravelLivewireTables\Views\Filters\MultiSelectFilter; @@ -207,4 +210,40 @@ public function test_can_check_if_filter_layout_slidedown_is_hidden(): void $this->assertFalse($this->basicTable->getFilterSlideDownDefaultStatus()); } + + public function test_event_fires_for_filter(): void + { + Event::fake(); + + $testTable = new class extends PetsTable + { + public function configure(): void + { + parent::configure(); + } + }; + $testTable->configure(); + $testTable->boot(); + $testTable->bootedComponentUtilities(); + $testTable->bootedWithData(); + $testTable->bootedWithColumns(); + $testTable->bootedWithColumnSelect(); + $testTable->bootedWithSecondaryHeader(); + $testTable->booted(); + + $testTable->setFilter('breed_id_filter', '2'); + $testTable->updatedFilterComponents('2', 'breed_id_filter'); + $this->assertSame(['breed_id_filter' => '2'], $testTable->getAppliedFiltersWithValues()); + Event::assertNotDispatched(FilterApplied::class); + + $testTable->enableFilterAppliedEvent(); + + $testTable->setFilter('breed_id_filter', '3'); + $testTable->updatedFilterComponents('3', 'breed_id_filter'); + $this->assertSame(['breed_id_filter' => '3'], $testTable->getAppliedFiltersWithValues()); + Event::assertDispatched(FilterApplied::class); + + } + + } From ecf20c5b7ce36535dae456f677023c5bdeca21ce Mon Sep 17 00:00:00 2001 From: lrljoe Date: Tue, 12 Nov 2024 22:32:35 +0000 Subject: [PATCH 2/2] Fix styling --- tests/Unit/Traits/Helpers/FilterHelpersTest.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tests/Unit/Traits/Helpers/FilterHelpersTest.php b/tests/Unit/Traits/Helpers/FilterHelpersTest.php index 65c656059..367dd1d1a 100644 --- a/tests/Unit/Traits/Helpers/FilterHelpersTest.php +++ b/tests/Unit/Traits/Helpers/FilterHelpersTest.php @@ -3,9 +3,9 @@ namespace Rappasoft\LaravelLivewireTables\Tests\Unit\Traits\Helpers; use Illuminate\Support\Facades\Event; -use Rappasoft\LaravelLivewireTables\Tests\TestCase; -use Rappasoft\LaravelLivewireTables\Tests\Http\Livewire\PetsTable; use Rappasoft\LaravelLivewireTables\Events\FilterApplied; +use Rappasoft\LaravelLivewireTables\Tests\Http\Livewire\PetsTable; +use Rappasoft\LaravelLivewireTables\Tests\TestCase; use Rappasoft\LaravelLivewireTables\Views\Filters\DateFilter; use Rappasoft\LaravelLivewireTables\Views\Filters\DateTimeFilter; use Rappasoft\LaravelLivewireTables\Views\Filters\MultiSelectFilter; @@ -244,6 +244,4 @@ public function configure(): void Event::assertDispatched(FilterApplied::class); } - - }