/**
 * 全局测试清理
 * 在所有测试运行后执行，清理测试数据
 */
import { disposeApiClient } from './helpers/api-client';
import { cleanupAllResources, getTrackedCount } from './helpers/test-data';

async function globalTeardown() {
  console.log('\n========================================');
  console.log('  自动化测试 - 全局清理');
  console.log('========================================\n');

  // 1. 清理测试期间创建的所有资源
  const count = getTrackedCount();
  if (count > 0) {
    console.log(`[teardown] 待清理资源: ${count} 个`);
    await cleanupAllResources();
    console.log('  ✅ 测试资源已清理');
  } else {
    console.log('[teardown] 无待清理资源');
  }

  // 2. 释放 API 客户端
  await disposeApiClient();
  console.log('  ✅ API 客户端已释放');

  console.log('\n========================================');
  console.log('  清理完成');
  console.log('========================================\n');
}

export default globalTeardown;
