""" 简单测试CalendarInfo模型的基本功能 """ import sys import os sys.path.append(os.path.dirname(os.path.abspath(__file__))) def test_calendar_info_model(): """测试CalendarInfo模型的基本功能""" print("=== 测试CalendarInfo模型基本功能 ===") try: # 导入模型 from app.core.data_parse.calendar import CalendarInfo print("✅ 成功导入CalendarInfo模型") # 测试模型属性 print(f"表名: {CalendarInfo.__tablename__}") print(f"表参数: {CalendarInfo.__table_args__}") # 测试字段定义 print("字段定义:") for column in CalendarInfo.__table__.columns: # type: ignore print(f" - {column.name}: {column.type}") print("✅ CalendarInfo模型定义正确") except Exception as e: print(f"❌ 测试失败: {e}") import traceback traceback.print_exc() def test_calendar_info_creation(): """测试CalendarInfo对象的创建""" print("\n=== 测试CalendarInfo对象创建 ===") try: from app.core.data_parse.calendar import CalendarInfo from datetime import date # 创建测试数据 test_data = { 'yangli': '2025-01-19', 'yinli': '甲午(马)年八月十八', 'wuxing': '井泉水 建执位', 'chongsha': '冲兔(己卯)煞东', 'baiji': '乙不栽植千株不长 酉不宴客醉坐颠狂', 'jishen': '官日 六仪 益後 月德合 除神 玉堂 鸣犬', 'yi': '祭祀 出行 扫舍 馀事勿取', 'xiongshen': '月建 小时 土府 月刑 厌对 招摇 五离', 'ji': '诸事不宜' } # 使用from_dict方法创建对象 calendar_info = CalendarInfo.from_dict(test_data) print("✅ 成功创建CalendarInfo对象") # 测试to_dict方法 result_dict = calendar_info.to_dict() print("✅ to_dict方法工作正常") print(f"转换结果: {result_dict}") # 测试to_json方法 json_str = calendar_info.to_json() print("✅ to_json方法工作正常") print(f"JSON字符串: {json_str}") except Exception as e: print(f"❌ 测试失败: {e}") import traceback traceback.print_exc() if __name__ == "__main__": test_calendar_info_model() test_calendar_info_creation() print("\n🎉 基本功能测试完成!")