Repository navigation
Expand file tree
/
Copy pathtest_basic.py
More file actions
142 lines (108 loc) · 3.57 KB
/
Copy pathtest_basic.py
File metadata and controls
142 lines (108 loc) · 3.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#!/usr/bin/env python3
"""
FreeU简单测试 - 验证基础功能
"""
import sys
import os
from pathlib import Path
# 将src目录添加到Python路径
current_dir = Path(__file__).parent
src_dir = current_dir / 'src'
sys.path.insert(0, str(src_dir))
def test_basic_imports():
"""测试基础导入"""
print("🧪 测试基础导入...")
try:
from src.utils.config import Config
print("✅ 配置模块导入成功")
from src.utils.logger import setup_logging
print("✅ 日志模块导入成功")
from src.core.scanner import DirectoryScanner, FileInfo
print("✅ 扫描器模块导入成功")
return True
except Exception as e:
print(f"❌ 导入失败: {e}")
return False
def test_config():
"""测试配置"""
print("⚙️ 测试配置模块...")
try:
from src.utils.config import config
print(f"✅ 配置初始化成功")
print(f" 日志级别: {config.log_level}")
print(f" 最大文件数: {config.max_files}")
return True
except Exception as e:
print(f"❌ 配置测试失败: {e}")
return False
def test_logging():
"""测试日志"""
print("📝 测试日志模块...")
try:
from src.utils.logger import setup_logging, log_operation_start, log_operation_complete
logger = setup_logging()
print("✅ 日志系统初始化成功")
log_operation_start("测试操作")
log_operation_complete("测试操作", "成功")
print("✅ 日志记录功能正常")
return True
except Exception as e:
print(f"❌ 日志测试失败: {e}")
return False
def test_scanner():
"""测试扫描器"""
print("🔍 测试文件扫描器...")
try:
from src.core.scanner import DirectoryScanner
# 创建临时测试目录
test_dir = Path(__file__).parent / "test_temp"
test_dir.mkdir(exist_ok=True)
# 创建测试文件
test_file = test_dir / "test.txt"
test_file.write_text("test content")
# 测试扫描
scanner = DirectoryScanner(test_dir)
files = scanner.scan_directory(recursive=False)
print(f"✅ 扫描完成,找到 {len(files)} 个文件")
if files:
file_info = files[0]
print(f" 文件名: {file_info.name}")
print(f" 大小: {file_info.size} 字节")
# 清理
import shutil
shutil.rmtree(test_dir)
return True
except Exception as e:
print(f"❌ 扫描器测试失败: {e}")
return False
def main():
"""主测试函数"""
print("🚀 FreeU基础功能测试")
print("=" * 40)
tests = [
test_basic_imports,
test_config,
test_logging,
test_scanner
]
passed = 0
total = len(tests)
for test in tests:
try:
if test():
passed += 1
print()
except Exception as e:
print(f"❌ 测试异常: {e}")
print()
print("=" * 40)
print(f"测试结果: {passed}/{total} 通过")
if passed == total:
print("🎉 所有测试通过!基础功能正常")
return True
else:
print("⚠️ 部分测试失败,请检查错误信息")
return False
if __name__ == "__main__":
success = main()
sys.exit(0 if success else 1)