MetaCore-startup/tests/test_import_fix.py
2025-10-11 09:27:51 +08:00

95 lines
2.5 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
测试导入修复
"""
import sys
import os
def test_imports():
"""测试模块导入"""
print("🔍 测试模块导入...")
try:
# 测试基础模块导入
from data.project_manager import ProjectManager
print("✅ data.project_manager 导入成功")
from ui.main_window import MainWindow
print("✅ ui.main_window 导入成功")
from ui.import_project_dialog import ImportProjectDialog
print("✅ ui.import_project_dialog 导入成功")
from ui.sidebar import Sidebar
print("✅ ui.sidebar 导入成功")
from ui.project_area import ProjectArea
print("✅ ui.project_area 导入成功")
from ui.project_card import ProjectCard
print("✅ ui.project_card 导入成功")
return True
except Exception as e:
print(f"❌ 导入失败: {e}")
return False
def test_dialog_creation():
"""测试对话框创建"""
print("\n🔍 测试对话框创建...")
try:
from PyQt5.QtWidgets import QApplication
from data.project_manager import ProjectManager
from ui.import_project_dialog import ImportProjectDialog
# 创建应用程序实例(如果不存在)
app = QApplication.instance()
if app is None:
app = QApplication(sys.argv)
# 创建项目管理器
project_manager = ProjectManager()
print("✅ ProjectManager 创建成功")
# 创建导入对话框
dialog = ImportProjectDialog(project_manager)
print("✅ ImportProjectDialog 创建成功")
return True
except Exception as e:
print(f"❌ 对话框创建失败: {e}")
import traceback
traceback.print_exc()
return False
def main():
"""主函数"""
print("🚀 开始测试导入修复...")
print("=" * 50)
# 测试导入
import_success = test_imports()
if import_success:
# 测试对话框创建
dialog_success = test_dialog_creation()
if dialog_success:
print("\n🎉 所有测试通过!导入问题已修复。")
return True
else:
print("\n❌ 对话框创建测试失败")
return False
else:
print("\n❌ 模块导入测试失败")
return False
if __name__ == "__main__":
success = main()
sys.exit(0 if success else 1)