fix(models): correct UserSetting import namespace and add test coverage

This commit is contained in:
2026-09-07 18:34:51 +02:00
parent 208efbb85d
commit 3502c3e85b
34 changed files with 2497 additions and 2 deletions
+55
View File
@@ -0,0 +1,55 @@
<?php
namespace Tests\Unit\Models;
use App\Features\Consoles\Models\Console;
use App\Features\Games\Models\Game;
use Illuminate\Foundation\Testing\RefreshDatabase;
use PHPUnit\Framework\Attributes\Test;
use Tests\TestCase;
class ConsoleTest extends TestCase
{
use RefreshDatabase;
#[Test]
public function it_has_many_games(): void
{
$console = Console::factory()->create();
Game::factory()->count(3)->create(['console_id' => $console->id]);
$this->assertCount(3, $console->games);
}
#[Test]
public function it_uses_slug_as_route_key(): void
{
$console = new Console();
$this->assertEquals('slug', $console->getRouteKeyName());
}
#[Test]
public function it_casts_rom_extensions_to_array(): void
{
$console = Console::factory()->create(['rom_extensions' => ['nes', 'sms']]);
$this->assertIsArray($console->rom_extensions);
$this->assertEquals(['nes', 'sms'], $console->rom_extensions);
}
#[Test]
public function it_has_fillable_attributes(): void
{
$console = new Console();
$this->assertEquals([
'name',
'slug',
'icon_path',
'rom_extensions',
'igdb_platform_id',
'tgdb_platform_id',
], $console->getFillable());
}
}