42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
"""测试辅助函数"""
|
|
|
|
import pytest
|
|
from njupt_mcp.utils.helpers import format_json, parse_semester, validate_student_id
|
|
|
|
|
|
def test_format_json():
|
|
"""测试 JSON 格式化"""
|
|
data = {"name": "测试", "value": 123}
|
|
result = format_json(data)
|
|
assert '"name": "测试"' in result
|
|
assert '"value": 123' in result
|
|
|
|
|
|
def test_parse_semester_valid():
|
|
"""测试学期解析 - 有效格式"""
|
|
result = parse_semester("2024-2025-1")
|
|
assert result == ("2024", "2025", 1)
|
|
|
|
result = parse_semester("2023-2024-2")
|
|
assert result == ("2023", "2024", 2)
|
|
|
|
|
|
def test_parse_semester_invalid():
|
|
"""测试学期解析 - 无效格式"""
|
|
assert parse_semester("2024-2025") is None
|
|
assert parse_semester("invalid") is None
|
|
assert parse_semester("") is None
|
|
|
|
|
|
def test_validate_student_id_valid():
|
|
"""测试学号验证 - 有效格式"""
|
|
assert validate_student_id("B21010101") is True
|
|
assert validate_student_id("M21010101") is True
|
|
|
|
|
|
def test_validate_student_id_invalid():
|
|
"""测试学号验证 - 无效格式"""
|
|
assert validate_student_id("12345678") is False
|
|
assert validate_student_id("B210101") is False
|
|
assert validate_student_id("") is False
|