<?php

/**
 * 文件功能：用户成就测试工厂。
 *
 * 为成就相关 Feature Test 快速生成解锁或进度记录。
 */

namespace Database\Factories;

use App\Models\User;
use App\Models\UserAchievement;
use Illuminate\Database\Eloquent\Factories\Factory;

/**
 * 类功能：生成用户成就模型的默认测试数据。
 *
 * @extends Factory<UserAchievement>
 */
class UserAchievementFactory extends Factory
{
    /**
     * 定义模型的默认测试状态。
     *
     * @return array<string, mixed>
     */
    public function definition(): array
    {
        return [
            'user_id' => User::factory(),
            'achievement_key' => 'chat_first_message',
            'progress_value' => 1,
            'metadata' => ['threshold' => 1],
        ];
    }
}
