| """测试默认形象功能""" |
| import os |
| import sys |
| from pathlib import Path |
|
|
| |
| sys.path.insert(0, str(Path(__file__).parent)) |
|
|
| |
| os.environ.setdefault("DATA_DIR", "data") |
|
|
| from app.user_config import UserConfig |
|
|
| def test_default_character(): |
| """测试默认形象加载""" |
| print("=" * 50) |
| print("测试默认形象功能") |
| print("=" * 50) |
| |
| |
| default_image = Path("generated_images/default_character.jpeg") |
| print(f"\n1. 检查默认形象文件: {default_image}") |
| if default_image.exists(): |
| print(f" ✅ 默认形象存在,大小: {default_image.stat().st_size} bytes") |
| else: |
| print(f" ❌ 默认形象不存在") |
| return |
| |
| |
| print(f"\n2. 清空用户配置(模拟新用户)") |
| user_config = UserConfig("data") |
| config_file = Path("data/user_config.json") |
| if config_file.exists(): |
| config_file.unlink() |
| print(f" ✅ 已删除旧配置") |
| |
| |
| print(f"\n3. 加载用户配置") |
| config = user_config.load_config() |
| print(f" 配置内容: {config}") |
| |
| |
| if config.get('character', {}).get('image_url'): |
| print(f" ✅ 已有形象: {config['character']['image_url']}") |
| else: |
| print(f" ℹ️ 暂无形象(需要通过 API 端点加载)") |
| |
| |
| print(f"\n4. 模拟加载默认形象") |
| if not config.get('character', {}).get('image_url'): |
| user_config.save_character_image( |
| image_url=str(default_image), |
| prompt="默认治愈系小猫形象", |
| preferences={ |
| "color": "薰衣草紫", |
| "personality": "温柔", |
| "appearance": "无配饰", |
| "role": "陪伴式朋友" |
| } |
| ) |
| print(f" ✅ 默认形象已保存") |
| |
| |
| print(f"\n5. 验证配置") |
| config = user_config.load_config() |
| if config.get('character', {}).get('image_url'): |
| print(f" ✅ 形象 URL: {config['character']['image_url']}") |
| print(f" ✅ 偏好设置: {config['character'].get('preferences', {})}") |
| else: |
| print(f" ❌ 形象加载失败") |
| |
| print("\n" + "=" * 50) |
| print("测试完成!") |
| print("=" * 50) |
|
|
| if __name__ == "__main__": |
| test_default_character() |
|
|