Refactor Qtech model to utilize centralized VLAN range expansion utility

- Replaced the internal `_expand_vlan_range` function in the `Qtech` class with the new `expand_vlan_range` utility from `utils.py` for improved code maintainability.
- Added new configuration files `config_1.conf` and `config_2.conf` for Qtech devices to facilitate testing.
- Introduced expected output JSON files `config_1.expected.json` and `config_2.expected.json` to validate the parsing of Qtech configurations against expected results.
This commit is contained in:
IluaAir
2026-06-07 08:47:08 +03:00
parent 1bc01c9c1b
commit 0ef5e7798a
5 changed files with 450 additions and 41 deletions

View File

@@ -0,0 +1,185 @@
{
"system": {
"model": "QSW-8330-40T-DC",
"serial_number": "6060606060606060",
"version": "96279"
},
"interfaces": [
{
"interface": "GigaEthernet1/0/9",
"ip_address": null,
"mask": null,
"description": "FREE"
},
{
"interface": "VLAN1",
"ip_address": "192.168.0.1",
"mask": 16,
"description": null
},
{
"interface": "VLAN1002",
"ip_address": "13.36.8.1",
"mask": 24,
"description": "test-1002"
}
],
"vlans": [
{
"vlan_id": 1,
"description": null
},
{
"vlan_id": 7,
"description": null
},
{
"vlan_id": 14,
"description": null
},
{
"vlan_id": 15,
"description": null
},
{
"vlan_id": 44,
"description": null
},
{
"vlan_id": 101,
"description": null
},
{
"vlan_id": 102,
"description": null
},
{
"vlan_id": 115,
"description": null
},
{
"vlan_id": 117,
"description": null
},
{
"vlan_id": 118,
"description": null
},
{
"vlan_id": 119,
"description": null
},
{
"vlan_id": 120,
"description": null
},
{
"vlan_id": 121,
"description": null
},
{
"vlan_id": 122,
"description": null
},
{
"vlan_id": 123,
"description": null
},
{
"vlan_id": 124,
"description": null
},
{
"vlan_id": 130,
"description": null
},
{
"vlan_id": 131,
"description": null
},
{
"vlan_id": 132,
"description": null
},
{
"vlan_id": 133,
"description": null
},
{
"vlan_id": 134,
"description": null
},
{
"vlan_id": 135,
"description": null
},
{
"vlan_id": 136,
"description": null
},
{
"vlan_id": 139,
"description": null
},
{
"vlan_id": 167,
"description": null
},
{
"vlan_id": 200,
"description": null
},
{
"vlan_id": 201,
"description": null
},
{
"vlan_id": 202,
"description": null
},
{
"vlan_id": 203,
"description": null
},
{
"vlan_id": 204,
"description": null
},
{
"vlan_id": 205,
"description": null
},
{
"vlan_id": 772,
"description": null
},
{
"vlan_id": 1607,
"description": null
},
{
"vlan_id": 888,
"description": null
},
{
"vlan_id": 2016,
"description": null
},
{
"vlan_id": 2085,
"description": null
},
{
"vlan_id": 2086,
"description": null
},
{
"vlan_id": 2087,
"description": null
},
{
"vlan_id": 2088,
"description": null
}
]
}