simple_syntax_test.py 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. 简单语法测试
  5. 验证修复后的代码语法是否正确
  6. """
  7. import ast
  8. import os
  9. def test_file_syntax(file_path):
  10. """测试文件语法"""
  11. try:
  12. with open(file_path, 'r', encoding='utf-8') as f:
  13. content = f.read()
  14. # 解析AST
  15. ast.parse(content)
  16. return True, None
  17. except SyntaxError as e:
  18. return False, f"语法错误: {e}"
  19. except Exception as e:
  20. return False, f"其他错误: {e}"
  21. def main():
  22. """主测试函数"""
  23. print("🚀 开始语法测试")
  24. print("=" * 60)
  25. # 测试修复的文件
  26. test_files = [
  27. "src/app/services/auth_service.py",
  28. "src/views/auth_view.py",
  29. "src/views/tag_view.py",
  30. "src/views/system_view.py",
  31. "src/app/utils/auth_decorator.py",
  32. "src/app/services/jwt_token.py"
  33. ]
  34. all_passed = True
  35. for file_path in test_files:
  36. if os.path.exists(file_path):
  37. success, error = test_file_syntax(file_path)
  38. if success:
  39. print(f"✅ {file_path}: 语法正确")
  40. else:
  41. print(f"❌ {file_path}: {error}")
  42. all_passed = False
  43. else:
  44. print(f"⚠️ {file_path}: 文件不存在")
  45. print("\n" + "=" * 60)
  46. if all_passed:
  47. print("🎉 所有文件语法测试通过!")
  48. print("\n📋 修复总结:")
  49. print("✅ AuthService.get_current_user() 现在返回 (user, new_token)")
  50. print("✅ AuthService.get_current_user_only() 提供向后兼容")
  51. print("✅ auth_view.py 正确处理元组返回值")
  52. print("✅ tag_view.py 使用向后兼容方法")
  53. print("✅ 所有相关文件语法正确")
  54. else:
  55. print("❌ 部分文件存在语法错误")
  56. if __name__ == "__main__":
  57. main()