Skip to content

Commit e8ba0ad

Browse files
committed
Add setFilterDefaultValue Test
1 parent eaadfb5 commit e8ba0ad

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?php
2+
3+
namespace Rappasoft\LaravelLivewireTables\Tests\Unit\Traits\Filters;
4+
5+
use Illuminate\Database\Eloquent\Builder;
6+
use PHPUnit\Framework\Attributes\Group;
7+
use Rappasoft\LaravelLivewireTables\Exceptions\DataTableConfigurationException;
8+
use Rappasoft\LaravelLivewireTables\Tests\Http\Livewire\PetsTable;
9+
use Rappasoft\LaravelLivewireTables\Tests\Models\Breed;
10+
use Rappasoft\LaravelLivewireTables\Tests\TestCase;
11+
use Rappasoft\LaravelLivewireTables\Views\Filters\TextFilter;
12+
13+
#[Group('Filters')]
14+
final class FilterDefaultValueTest extends TestCase
15+
{
16+
public function test_checks_that_default_value_for_filter_is_set(): void
17+
{
18+
$mock = new class extends PetsTable
19+
{
20+
public function configure(): void
21+
{
22+
parent::configure();
23+
$this->useComputedPropertiesDisabled();
24+
25+
}
26+
public function filters(): array
27+
{
28+
return [
29+
TextFilter::make('Pet Name', 'pet_name_filter')
30+
->filter(function (Builder $builder, string $value) {
31+
return $builder->where('pets.name', '=', $value);
32+
})
33+
->setFilterDefaultValue('car'),
34+
];
35+
}
36+
};
37+
$this->assertSame([], $mock->getAppliedFilters());
38+
39+
$mock->bootAll();
40+
41+
$this->assertSame(['pet_name_filter' => 'car'], $mock->getAppliedFilters());
42+
43+
}
44+
}

0 commit comments

Comments
 (0)