ERP/test_py/test_import.py
2025-11-25 10:35:02 +08:00

60 lines
1.6 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import sys
sys.path.insert(0, 'server')
# 测试导入函数的逻辑
def test_parse():
# 模拟辅助函数
def parse_percentage(value):
if value is None:
return 0
if isinstance(value, (int, float)):
return float(value)
value_str = str(value).strip()
if value_str.endswith('%'):
value_str = value_str[:-1]
try:
return float(value_str)
except:
return 0
def safe_int(value, default=0):
if value is None:
return default
try:
return int(float(value))
except:
return default
# 测试数据
test_cases = [
('62.28%', 62.28),
('62.28', 62.28),
(62.28, 62.28),
('', 0),
(None, 0),
]
print("测试 parse_percentage:")
for input_val, expected in test_cases:
result = parse_percentage(input_val)
status = "" if result == expected else ""
print(f" {status} parse_percentage({repr(input_val)}) = {result} (期望: {expected})")
print("\n测试 safe_int:")
test_int_cases = [
(100, 100),
(100.5, 100),
('100', 100),
('', 0),
(None, 0),
]
for input_val, expected in test_int_cases:
result = safe_int(input_val)
status = "" if result == expected else ""
print(f" {status} safe_int({repr(input_val)}) = {result} (期望: {expected})")
if __name__ == '__main__':
test_parse()