| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <?php
- namespace Tests\Feature;
- use App\Models\Role;
- use App\Models\Setting;
- use App\Models\User;
- use Illuminate\Foundation\Testing\RefreshDatabase;
- use Tests\TestCase;
- class AdminSettingsControllerTest extends TestCase
- {
- use RefreshDatabase;
- protected $seed = true;
- private User $adminUser;
- private User $managerUser;
- protected function setUp(): void
- {
- parent::setUp();
- $this->adminUser = User::factory()->create(['role' => Role::ADMIN]);
- $this->managerUser = User::factory()->create(['role' => Role::MANAGER]);
- }
- public function test_admin_can_store_ttn_next_number_setting(): void
- {
- $response = $this->actingAs($this->adminUser)
- ->post(route('admin.settings.store'), [
- 'default_maf_order_user_id' => null,
- 'reclamation_act_representative_user_id' => null,
- 'ttn_next_number' => 25,
- ]);
- $response->assertRedirect();
- $response->assertSessionHas('success');
- $this->assertSame(25, Setting::getInt(Setting::KEY_TTN_NEXT_NUMBER));
- }
- public function test_manager_cannot_store_admin_settings(): void
- {
- $response = $this->actingAs($this->managerUser)
- ->post(route('admin.settings.store'), [
- 'ttn_next_number' => 25,
- ]);
- $response->assertStatus(403);
- }
- }
|