/**
 * 注册测试账号脚本
 *
 * 用途：快速注册测试账号，方便开发和测试
 * 运行：node scripts/register-test-user.js
 */

const TEST_CREDENTIALS = {
  email: "test@example.com",
  password: "Test123456",
  name: "测试用户",
};

async function registerTestUser() {
  const baseUrl = "http://localhost:3000";

  console.log("正在注册测试账号...");
  console.log(`邮箱: ${TEST_CREDENTIALS.email}`);
  console.log(`密码: ${TEST_CREDENTIALS.password}`);

  try {
    const response = await fetch(`${baseUrl}/api/auth/signin`, {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
      },
      body: JSON.stringify({
        email: TEST_CREDENTIALS.email,
        password: TEST_CREDENTIALS.password,
        name: TEST_CREDENTIALS.name,
        flow: "signUp",
      }),
    });

    const result = await response.json();

    if (response.ok) {
      console.log("✓ 测试账号注册成功！");
      console.log(`\n您现在可以使用以下凭据登录：`);
      console.log(`  邮箱: ${TEST_CREDENTIALS.email}`);
      console.log(`  密码: ${TEST_CREDENTIALS.password}`);
      console.log(`\n或在登录页面点击"测试账号快速登录"按钮。`);
    } else if (response.status === 501) {
      console.log("ℹ API 路由暂未实现，请通过浏览器手动注册：");
      console.log(`  1. 访问 http://localhost:3000/auth`);
      console.log(`  2. 点击"还没有账户？立即注册"`);
      console.log(`  3. 填写：`);
      console.log(`     邮箱: ${TEST_CREDENTIALS.email}`);
      console.log(`     密码: ${TEST_CREDENTIALS.password}`);
      console.log(`     姓名: ${TEST_CREDENTIALS.name}`);
    } else {
      console.error("✗ 注册失败:", result.error || result.message);
    }
  } catch (error) {
    console.error("✗ 请求失败:", error.message);
    console.log("\n请确保开发服务器正在运行 (pnpm dev)");
  }
}

registerTestUser();
