Skip to content

Commit 8d2bc08

Browse files
Add pfc_stat_history support (sonic-net#4102)
* Add pfc_stat_history support * fix pfc_stat_history value
1 parent 7a046d6 commit 8d2bc08

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

generic_config_updater/gcu_field_operation_validators.conf.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
"detection_time",
5353
"action",
5454
"global/poll_interval",
55+
"pfc_stat_history",
5556
""
5657
],
5758
"operations": ["remove", "add", "replace"],

tests/generic_config_updater/field_operation_validator_test.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,25 @@ def test_rdma_config_update_validator_spc_asic_other_field(self):
363363
assert generic_config_updater.field_operation_validators.\
364364
rdma_config_update_validator(scope, patch_element) is False
365365

366+
@patch("sonic_py_common.device_info.get_sonic_version_info",
367+
mock.Mock(return_value={"build_version": "SONiC.20220530"}))
368+
@patch("generic_config_updater.field_operation_validators.get_asic_name",
369+
mock.Mock(return_value="spc1"))
370+
@patch("os.path.exists", mock.Mock(return_value=True))
371+
@patch("builtins.open", mock_open(read_data='''{"tables": {"PFC_WD": {"validator_data": {
372+
"rdma_config_update_validator": {"PFCWD enable/disable": {"fields": [
373+
"restoration_time", "detection_time", "action", "global/poll_interval", "pfc_stat_history"
374+
], "operations": ["remove", "replace", "add"], "platforms": {"spc1": "20181100"}}}}}}}'''))
375+
def test_rdma_config_update_validator_spc_asic_pfc_stat_history(self):
376+
patch_element = {
377+
"path": "/PFC_WD/Ethernet8/pfc_stat_history",
378+
"op": "replace",
379+
"value": "enable"
380+
}
381+
for scope in ["localhost", "asic0"]:
382+
assert generic_config_updater.field_operation_validators.\
383+
rdma_config_update_validator(scope, patch_element) is True
384+
366385
@patch("sonic_py_common.device_info.get_sonic_version_info",
367386
mock.Mock(return_value={"build_version": "20250530.12"}))
368387
@patch("generic_config_updater.field_operation_validators.get_asic_name",

0 commit comments

Comments
 (0)