init: AI培训与智能巡检系统
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
"""字段字典/映射单元测试 — 对应 T-1.1 UT。"""
|
||||
import os
|
||||
import sys
|
||||
import unittest
|
||||
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
|
||||
|
||||
from app.etl import field_dict as fd
|
||||
|
||||
|
||||
class TestHeaderMapping(unittest.TestCase):
|
||||
def test_basic(self):
|
||||
self.assertEqual(fd.map_header("型号"), "model_code")
|
||||
self.assertEqual(fd.map_header("车号"), "car_number")
|
||||
self.assertEqual(fd.map_header("系列"), "series")
|
||||
|
||||
def test_with_spaces_and_newlines(self):
|
||||
self.assertEqual(fd.map_header("车体长度 /mm"), "length")
|
||||
self.assertEqual(fd.map_header("牵引力 (起动)/kN"), "tractive_start")
|
||||
self.assertEqual(fd.map_header("最高运营时速"), "max_speed")
|
||||
|
||||
def test_unknown(self):
|
||||
self.assertIsNone(fd.map_header("不存在的列"))
|
||||
|
||||
def test_normalize(self):
|
||||
self.assertEqual(fd.normalize_header("车体长度 /mm"), "车体长度/mm")
|
||||
self.assertEqual(fd.normalize_header("东\n风"), "东风")
|
||||
|
||||
|
||||
class TestConfig(unittest.TestCase):
|
||||
def test_all_12_sheets_configured(self):
|
||||
self.assertEqual(len(fd.CATEGORY_CONFIG), 12)
|
||||
|
||||
def test_grain_values(self):
|
||||
for cfg in fd.CATEGORY_CONFIG.values():
|
||||
self.assertIn(cfg["grain"], ("model", "unit"))
|
||||
|
||||
def test_numeric_fields_have_synonyms(self):
|
||||
for field in fd.NUMERIC_UNIT_FIELDS:
|
||||
self.assertIn(field, fd.FIELD_SYNONYMS, field)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user