test: fiabilisation de la suite de tests

- BusinessLogicTest: utilise le vrai modele StressEvent + auth Sanctum
- AdminAccessTest: compte actif requis pour l'acces au panel
- SecurityHeadersTest: verifie les en-tetes de securite
- suppression du modele orphelin EvenementStress

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-08 18:44:13 +02:00
parent ebe1836f7e
commit c51f17a74c
8 changed files with 61 additions and 35 deletions
+13 -6
View File
@@ -2,23 +2,30 @@
namespace Tests\Feature;
use App\Models\EvenementStress;
use App\Models\StressEvent;
use App\Models\User;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Foundation\Testing\WithFaker;
use Tests\TestCase;
use Laravel\Sanctum\Sanctum;
use PHPUnit\Framework\Attributes\Test;
use Tests\TestCase;
class BusinessLogicTest extends TestCase
{
use RefreshDatabase;
#[Test]
public function la_liste_des_evenements_de_stress_est_accessible()
{
// On crée un événement simulé
EvenementStress::create(['libelle' => 'Mariage', 'points' => 50]);
// La route /api/stress-events est protégée par Sanctum :
// on simule un utilisateur authentifié via un jeton.
Sanctum::actingAs(User::factory()->create());
// On crée un événement de stress (échelle Holmes & Rahe)
StressEvent::create(['event_name' => 'Mariage', 'points' => 50]);
$response = $this->getJson('/api/stress-events');
$response->assertStatus(200)
->assertJsonFragment(['libelle' => 'Mariage']);
->assertJsonFragment(['event_name' => 'Mariage']);
}
}