feat: 完成 issue #21 点位字典 CSV schema 增加协议(protocol)维度

This commit is contained in:
2026-08-04 15:59:32 +08:00
parent 098125164d
commit cc7c7330cc
29 changed files with 131 additions and 27 deletions
+10 -3
View File
@@ -6,9 +6,9 @@ import unittest
from point_dict.loader import load_point_dict_csv
GOOD_CSV = """device_id,point_id,name,unit,dataType,sampleRate,qualityCode,opcNode
CLF-01,CLF-01.TEMP,炉温,℃,float,1000,true,ns=2;s=CLF.Temp
CLF-01,CLF-01.PRES,炉压,kPa,float,1000,,ns=2;s=CLF.Pres
GOOD_CSV = """device_id,point_id,name,unit,dataType,sampleRate,qualityCode,opcNode,protocol
CLF-01,CLF-01.TEMP,炉温,℃,float,1000,true,ns=2;s=CLF.Temp,opcua
CLF-01,CLF-01.PRES,炉压,kPa,float,1000,,ns=2;s=CLF.Pres,
"""
@@ -34,8 +34,15 @@ class LoaderTest(unittest.TestCase):
self.assertEqual(p0.sample_rate, 1000)
self.assertTrue(p0.quality_code)
self.assertEqual(p0.opc_node, "ns=2;s=CLF.Temp")
self.assertEqual(p0.protocol, "opcua")
self.assertEqual(p0.row_number, 2)
def test_protocol_blank_defaults_none(self):
"""protocol 列留空时默认 None(走模板 YAML 前缀路由)。"""
path = self._write(GOOD_CSV)
pd = load_point_dict_csv(path)
self.assertIsNone(pd.points[1].protocol)
def test_quality_code_default_true(self):
"""qualityCode 列留空时默认 true。"""
path = self._write(GOOD_CSV)