Show compare engine in progress and SQL skip reasons.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
oliver 2026-10-08 15:56:20 +08:00
parent ba16167c8e
commit 2df2f50510
6 changed files with 176 additions and 72 deletions

View file

@ -8,6 +8,7 @@ from unittest.mock import MagicMock
from netx_api.biz_state.compare_sql import (
can_sql_compare,
compile_row_filters_sql,
sql_compare_skip_reason,
_field_rules_sql_compatible,
_filters_sql_compatible,
_safe_field,
@ -117,6 +118,8 @@ class CompareSqlGateTests(unittest.TestCase):
"row_filters": [{"field": "afi", "op": "eq", "value": "ipv4"}],
}
self.assertTrue(can_sql_compare(_db(), sheet, port_map={}))
# BGP afi/vrf sheet splits via row_filters must not force Python
self.assertEqual(sql_compare_skip_reason(_db(), sheet, port_map={}), "")
def test_rejects_iface_normalize_when_key_uses_iface(self) -> None:
sheet = {