feat: add ApiLogResource with filters and view page

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Ovidiu U
2026-04-04 14:09:32 +01:00
parent 99b0ce480b
commit a8fb275793
4 changed files with 198 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
<?php
use App\Filament\Resources\ApiLogResource\Pages\ListApiLogs;
use App\Models\ApiLog;
use App\Models\User;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Livewire\Livewire;
uses(RefreshDatabase::class);
beforeEach(function () {
$this->admin = User::factory()->admin()->create();
$this->actingAs($this->admin);
});
it('renders the api log list page', function () {
$logs = ApiLog::factory()->count(3)->create();
Livewire::test(ListApiLogs::class)
->assertOk()
->assertCanSeeTableRecords($logs);
});
it('filters to errors only', function () {
$ok = ApiLog::factory()->create(['status_code' => 200, 'error' => null]);
$err = ApiLog::factory()->failed()->create();
Livewire::test(ListApiLogs::class)
->filterTable('errors_only')
->assertCanSeeTableRecords([$err])
->assertCanNotSeeTableRecords([$ok]);
});