<?php

namespace Tests\Feature;

use App\Models\StressEvent;
use App\Models\User;
use Illuminate\Foundation\Testing\RefreshDatabase;
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()
    {
        // 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(['event_name' => 'Mariage']);
    }
}
