Files
2026-09-21 10:14:57 +01:00

39 lines
1.4 KiB
PHP
Executable File

<?php
namespace Modules\Countries\Tests\Feature;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Support\Facades\Route;
use Modules\Countries\Database\Seeders\IsoCountriesSeeder;
use Modules\Countries\Models\Country;
use Tests\TestCase;
class CountriesModuleTest extends TestCase
{
use RefreshDatabase;
public function test_countries_module_reference_pages_are_registered(): void
{
$this->assertTrue(Route::has('countries.currencies.index'));
$this->assertTrue(Route::has('countries.languages.index'));
$this->assertTrue(Route::has('countries.scripts.index'));
$this->assertTrue(Route::has('countries.locodes.index'));
}
/** @test */
public function it_seeds_iso_countries(): void
{
$this->seed(IsoCountriesSeeder::class);
$this->assertDatabaseHas('countries', ['alpha2' => 'GB', 'alpha3' => 'GBR', 'numeric' => '826']);
}
/** @test */
public function it_can_update_country_support_settings(): void
{
$this->seed(IsoCountriesSeeder::class);
$country = Country::query()->where('alpha2', 'GB')->firstOrFail();
$country->update(['display_name' => 'United Kingdom', 'is_active' => false, 'sort_order' => 1]);
$this->assertDatabaseHas('countries', ['alpha2' => 'GB', 'display_name' => 'United Kingdom', 'is_active' => false, 'sort_order' => 1]);
}
}